plotters-rs/plotters

A rust drawing library for high quality data plotting for both WASM and native, statically and realtimely 🦀 📈🚀

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 2 minutes ago
Added to GitGenius on September 14th, 2026
Created on April 24th, 2019
Open Issues & Pull Requests: 184 (+0)
GitHub issues: Enabled
Number of forks: 320
Total Stargazers: 4,629 (+0)
Total Subscribers: 40 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 15.7 days
Mean response time: 122.2 days
90th percentile: 361.7 days
Tracked items: 44

Most active contributors

Sign in to see contributor activity.

How this project is maintained

100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "bug" is answered fastest, typically in about 4 days, while "feature request" waits about 5 weeks.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 56
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 742 days
Stale 30+ days: 54
Stale 90+ days: 49

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 1

Top labels

  • bug (34)
  • feature request (24)
  • help wanted (3)
  • enhancement (1)

Most active issues this week

Detailed Description

Plotters is a Rust drawing library for rendering figures, plots, and charts in pure Rust with support for both WebAssembly and native applications.

The library solves the problem of creating high-quality data visualizations across different platforms and rendering contexts. It achieves this through a modular backend architecture that abstracts the drawing surface, allowing the same plotting code to target bitmap outputs, vector graphics, GTK/Cairo windows, Piston windows, and WebAssembly environments. This design means developers write visualization logic once and deploy it across multiple platforms without rewriting core plotting code.

Plotters suits projects where you need to generate plots programmatically in Rust without heavy dependencies or where you want to embed interactive visualizations in web applications via WebAssembly. It works well for scientific computing, data analysis tools, and real-time monitoring applications. The library is particularly valuable if you need to avoid JavaScript charting libraries or if your plotting logic naturally fits within a Rust application. The project has moved some backend implementations to separate repositories, so you should check which backends are maintained as separate crates depending on your target platform.

The project maintains active development with regular updates to core functionality and backend support. Documentation is being actively expanded with a developer's guide in progress. The maintainers provide interactive examples through Jupyter notebook integration and a live WebAssembly demo, indicating ongoing effort to make the library accessible to new users. The modular backend architecture continues to evolve, with backends being extracted into separate repositories as the ecosystem matures.