3 个版本
使用旧的 Rust 2015
0.7.9 | 2016年10月27日 |
---|---|
0.7.8 | 2016年9月28日 |
0.7.7 | 2016年9月28日 |
在 可视化 中排名第 245
44KB
1K SLoC
Simple Chart
此存储库包含将迭代器(T, T)表示为(f64,f64)的内容,即以 BMP 格式表示的折线图。
示例 1. 一个序列和自动计算的坐标轴,返回为 Vec<u8>
let mut chart = Chart::new(200, 100, "#ffffff", "#000000")
.unwrap();
let v: Vec<_> = vec![(1.2,2.3), (3.4, 4.5), (5.6, 6.7)];
let serie = Serie::new(v.into_iter(), "#ff0000").unwrap();
let series = vec![serie];
let bmp = chart.draw(series.into_iter());
示例 2. 一个序列,从包含的宏公式!计算而来,
并手动设置 x 轴
let mut chart = Chart::new(400, 500, "#f14500", "#0027ff")
.unwrap()
.add_axis_x(Axis::new(-2.0, 2.0, 7, 2));
let v = formula!(y(x) = x.sin(), x = [-3.14, 3.14; 0.1]);
let serie = Serie::new(v.into_iter(), "#ffff00").unwrap();
let series = vec![serie];
let bmp = chart.draw(series.into_iter());
示例 3. 两个序列和手动设置 x 和 y 轴
let mut chart = Chart::new(740, 480, "#000000", "#ffffff")
.unwrap()
.add_axis_x(Axis::new(-2.0, 2.0, 7, 2))
.add_axis_y(Axis::new(-2.0, 2.0, 7, 2));
let v1 = formula!(y(x) = x.sin(), x = [-3.14, 3.14; 0.1]);
let v2 = formula!(y(x) = x.cos(), x = [-3.14, 3.14; 0.1]);
let serie1 = Serie::new(v1.into_iter(), "#ff0000").unwrap();
let serie2 = Serie::new(v2.into_iter(), "#00ff00").unwrap();
let series = vec![serie1, serie2];
let bmp = chart.draw(series.into_iter());
用法
将此内容放入您的 Cargo.toml
[dependencies]
simple-chart = "*"
并在您的 crate 根目录中放入此内容
extern crate simple_chart;
use simple_chart::{Chart, Serie, Axis, Point};
资源
许可证
MIT
依赖项
~0.2–1MB
~24K SLoC