Generate PNG or SVG charts from data in a Rust application.
Embed interactive charts in a web page using the same Rust code compiled to WebAssembly.
Create and preview data visualizations interactively inside a Jupyter notebook.
Different output backends (GTK, WebAssembly, etc.) live in separate packages and need to be added individually.
Plotters is a library for creating charts and data visualizations in the Rust programming language. It handles the drawing work so that developers can focus on their data rather than the mechanics of rendering lines, axes, and labels. It runs both in standard desktop applications and in web browsers, which means the same charting code can power a native tool or a web page. The library supports a wide variety of chart types. The gallery in the README shows line charts, stock candlestick charts, histograms, scatter plots, 3D surface plots, area charts, error bars, box plots, and animated charts, among others. It also supports fractal and mathematical diagrams, so it is not limited to business data. A key feature is the backend system. Rather than drawing to one fixed format, Plotters can direct its output to PNG bitmap files, SVG vector files, a live desktop window, a GTK window, or an HTML5 canvas in the browser via WebAssembly. You pick the backend that fits your deployment target, and the chart drawing code stays the same. Some backends live in separate repositories rather than the main package. The library also works inside Jupyter notebooks using the evcxr kernel, which lets data scientists run and preview charts interactively without building a full application. An interactive tutorial notebook is available for people who want to learn the library step by step. Plotters is written entirely in Rust, with no dependency on a C charting library underneath. Installation follows standard Rust package management by adding the crate to a project's dependency file. The README includes a quick-start example and links to full API documentation.
← plotters-rs on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.