Rust bindings for ImPlot, built by running bindgen on cimplot.
The bindings are currently based on ImPlot version 0.7. See the status section below for detailed information on implementation status.
imgui-rs requires minimum Rust version 1.40, so this project does as well by extension. The sys crate compiles implot, so a C++ compiler will also be required.
Examples are being built in the implot-examples
crate in this repo. To try them out,
clone the repo, change into the implot-examples
directory and try for example
cargo run --example line_plots
Since the crate is not released yet, the documentation is not hosted yet either. You
can build it yourself however by cloning this repo and then doing
cargo doc --open
An effort is made to document everything as it is being added. Feel free to open an issue
if documentation is unclear or lacking.
This repo tries to follow the approaches and style used in imgui-rs
somewhat closely,
because implot is to be used within imgui programs, and hence keeping the interfaces
and design philosophies close should make it easier to do that.
If you spot any design inconsistencies or paper cuts, feel free to open an issue.
Currently a work in progress. The author is open to collaboration, if you'd like to help, feel free to reach out via a Github issue.
Note that the API is not stabilized yet and expected to change as development progresses. Once there are actual releases on crates.io, semantic versioning will be followed.
At this point, raw bindings are working in implot-sys, and more idiomatic interfaces for plot creation as well a subset of the functionality for plots are implemented.