I searched over published crates on crates.io in November 2025 and found some interesting libraries. I briefly describe their functionality/main limitations here.
Note that as far as I've looked, egui_plot is the only plotting library that supports plot interactions straight through Rust, without going through Javascript or other binding layers.
Also, egui_plot produces a list of painting commands that are sent to a backend renderer, which can be GPU accelerated and easily integrated into other GUIs.
Therefore, egui_plot can efficiently render large number of (interactive) plot items.
See egui for more info about GPU integration.
| Name | Description |
|---|---|
plotters |
Pure Rust, interesting! But interactivity seems to be done via Javascript only. |
graplot |
Pure Rust, but inactive |
quill |
Pure Rust, SVG, basic plots |
plotlib |
Pure Rust, SVG/text, basic features, looks abandoned |
rustplotlib |
Pure Rust, inactive |
criterion-plot |
not maintained |
runmat-plot |
Uses matplotlib-like DSL |
cgrustplot |
terminal plotting |
termplot |
terminal plotting |
lowcharts |
terminal plotting |
Following crates wrap other plotting libraries:
| Name | Description |
|---|---|
dear-imgui-rs |
C/C++ bindings to https://github.com/ocornut/imgui. IMGUI is probably the most interesting library out there, as it is also immediate-mode based like egui and egui_plot. |
gnuplot |
C/C++ bindings to http://www.gnuplot.info/ |
plotly |
JS wrapper |
charming |
JS wrapper |
charts-rs |
JS wrapper |
plotpy |
Python wrapper |
poloto |
SVG, no interaction |