Skip to content

Latest commit

 

History

History
38 lines (31 loc) · 4.62 KB

File metadata and controls

38 lines (31 loc) · 4.62 KB

Plotting libraries in Rust

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.

Rust rendering libraries

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

Wrappers around other plotting libraries

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