可视化工具charming
Charming是一个功能强大且多用途的Rust图表渲染库,利用Apache ECharts的强大功能提供高质量的数据可视化。该库使用Rust编程语言构建,旨在为Rust生态系统提供一种直观有效的生成和可视化图表的方式,采用声明式和用户友好的API。亮点如下:
- 易于使用的声明式API。
- 丰富且可自定义的图表主题和样式。
- 支持多种格式的渲染,包括HTML、SVG、PNG和JPEG。
- 丰富的图表类型。
示例:
代码语言:javascript复制use charming::image_renderer::ImageRenderer;
use charming::{
component::Legend,
element::ItemStyle,
series::{Pie, PieRoseType},
Chart,
};
fn main() {
let chart = Chart::new()
.legend(Legend::new().top("bottom"))
.series(
Pie::new()
.name("Nightingale Chart")
.rose_type(PieRoseType::Radius)
.radius(vec!["50", "250"])
.center(vec!["50%", "50%"])
.item_style(ItemStyle::new().border_radius(8))
.data(vec![
(40.0, "rose 1"),
(38.0, "rose 2"),
(32.0, "rose 3"),
(30.0, "rose 4"),
(28.0, "rose 5"),
(26.0, "rose 6"),
(22.0, "rose 7"),
(18.0, "rose 8"),
]),
);
let mut renderer = ImageRenderer::new(1000, 800);
renderer.save(&chart, "/tmp/nightingale.svg");
}
绘制结果如下:
GitHub: https://github.com/yuankunzhang/charming
日志记录器
一个简单的、具有多种功能的终端 / 文件日志记录器。
这是simplelog的fork版本,作者之所以创建这个日志记录器,是因为对原工具的格式化能力不够满意,而且要对它进行“修复”所需的更改量太大。
GitHub: https://github.com/qarmin/handsome_logger
OPE加密库
这是受cryptdb的ope实现启发的保序加密(Order-preserving encryption,OPE)库。可加密的最大值是65532。
示例:
代码语言:javascript复制use ope_rs::get_ope;
fn main()
{
let k = b"this is a key 10".to_owned();
let ope = get_ope(&k);
let a = ope.encrypt(21).unwrap();
let b = ope.encrypt(65531).unwrap();
let c = ope.encrypt(65532).unwrap();
assert!(a < b);
assert!(b < c);
}
GitHub: https://github.com/sentclose/ope/
8080 CPU仿真器
一个用Rust编写的Intel 8080 CPU仿真器。该库旨在在不同的平台上重用:macOS、iOS、Android 和(如果可能的话)Web。
GitHub: https://github.com/k0Iry/8080-Emulator-in-Rust