ggplot-rs in the browser

A Rust reimplementation of ggplot2's grammar of graphics, compiled to WebAssembly. Data comes from DuckDB-Wasm (with the spatial extension) — everything below runs client-side.

World choropleth · geom_sf

DuckDB reads Natural Earth countries and ST_AsTexts the geometry to WKT; ggplot-rs renders an SVG. Hover a country — or click one to zoom to its continent (DuckDB re-queries, ggplot-rs re-renders).

loading…

Earthquakes, past 30 days · live USGS feed

DuckDB reads the USGS GeoJSON feed and ST_AsTexts each quake to WKT; ggplot-rs colours the points by magnitude. The pattern traces the tectonic plate boundaries. Hover for the location + magnitude.

Linked views · brush ↔ bar

A 100k-point scatter drawn by the raster backend (no DOM node per point) with nearest-point hover. Drag a box to brush — the selected points stay bright while the rest fade, and the ggplot-rs bar chart on the right updates with the per-group counts in your selection.