2个不稳定版本
0.2.0 | 2021年4月27日 |
---|---|
0.1.0 | 2019年9月17日 |
#264 in 可视化
27KB
594 行
rtplot
一个用于在Rust中进行实时绘图的库。这个库仍在早期开发阶段,因此API可能会随时间变化和改进。
用法
使用此库需要两个步骤:配置图表和通过其渲染函数显示图表。
use rand_distr::{Distribution, Normal};
use rtplot::{Figure, PlotType};
fn main() {
let normal = Normal::new(0.0, 1.0).unwrap();
let mut rng = rand::thread_rng();
// Configure the plot to hold 100 samples at a time. The x axis is not
// specified, so it is dynamically updated at runtime.
let mut figure = Figure::new(100)
.ylim([-1.0, 1.0])
.xlabel("Time (s)")
.ylabel("Amplitude")
.plot_type(PlotType::Line)
.color(0x80, 0x00, 0x80);
// The closure is called every time to generate a new state for the plot.
// The figure _must_ be run on the main thread due to compatibility issues
// with events loops on non-Unix operatins sytems.
Figure::display(&mut figure, |fig| {
let v: Vec<f32> = normal
.sample_iter(&mut rng)
.take(10)
.map(|x| x as f32)
.collect();
fig.plot_stream(&v);
});
}
依赖关系
~12–21MB
~315K SLoC