22 releases
0.8.4 | Sep 12, 2023 |
---|---|
0.8.2 | Aug 30, 2023 |
0.8.0 | Aug 28, 2021 |
0.6.0 | Apr 4, 2021 |
0.3.0 | Jun 28, 2018 |
#8 in Visualization
14,698 downloads per month
Used in 19 crates
(18 directly)
200KB
521 lines
textplots 
Terminal plotting library for using in Rust CLI applications. Should work well in any unicode terminal with monospaced font.
It is inspired by TextPlots.jl which is inspired by Drawille.
Currently it features only drawing line charts on Braille canvas, but could be extended to support other canvas and chart types just like UnicodePlots.jl or another cool terminal plotting library.
Contributions are very much welcome!
Usage
Using as a library
use textplots::{Chart, Plot, Shape};
fn main() {
println!("y = sin(x) / x");
Chart::default()
.lineplot(&Shape::Continuous(Box::new(|x| x.sin() / x)))
.display();
}

Using as a binary
textplots '10*x + x^2 + 10*sin(x)*abs(x)' --xmin=-20 --xmax=20

Bonus! Colored plots (see examples)

Building
Library
$ cargo build
Binary
$ cargo build --bin --release textplots --features="tool"
Dependencies
~0.2–8.5MB
~60K SLoC