1 个不稳定版本

0.1.0 2022年11月26日

#332可视化

MIT 许可证

72KB
487

cliplot

一个用于实时绘图数据的命令行应用程序。

功能

  • 从 stdin 进行实时绘图
  • 1-多个输入通道
  • 为每个通道配置正则表达式
  • 绘图时将数据记录到 CSV 文件
  • 跨平台

使用方法

cliplot will live plot data piped into stdin. It can plot multiple channels, parse data with regex, save data to a CSV, and more.

Usage: cliplot [OPTIONS]

Options:
  -r, --regexes <REGEXES>
          Regex strings to parse each channel with. If this is not specified, then a single channel that parses for `$float$` will be used.
          
          Each regex should be unambiguous from the others, and contain one capture group that contains a string convertable to a f64. Deliminators (such as the `$` above) are necessary to avoid numbers being cut across buffer breaks.

      --csv <CSV>
          Writes read data into a CSV file at path if set.
          
          The CSV file will contain the timestamp of each reading in ms, followed by the data and finally the channel number.

  -v, --verbose...
          More output per occurrence

  -q, --quiet...
          Less output per occurrence

  -h, --help
          Print help information (use `-h` for a summary)

  -V, --version
          Print version information

  • cliplot 使用 Rust 正则表达式语法。在使用像 $ 这样的符号时请小心。
  • 一些 shell,如 bash,在处理多个正则表达式字符串时存在问题。在这种情况下,只需按照顺序使用多个 -r 标志即可。
  • 要检查您的正则表达式是否被正确解释,请使用 -vvv 运行。要查看正在解析的数据,请使用 -vvvv 运行。

示例

some stream | cliplot

从输入流中绘制数据,解析 \$([+]-]$(由 $ 包围的浮点数)


 python3 print_with_delta.py 0.0032 | cliplot -r '\$([+|-]?\d*\.?\d*)\$' -r '%([+|-]?\d*\.?\d*)%' -c test.csv

python 脚本 中绘制数据,消除通道 0(用 $$ 表示)和通道 1(用 %% 表示)。同时将此数据记录到名为 test.csv 的 CSV 文件中。

安装

从源代码安装

cargo install cliplot

或使用此存储库

cargo build --release
# Binary is in target/release
target/release/cliplot --help

二进制文件

GitHub 发布标签应包含 Debian 存档和便携式 Windows 构建。

依赖项

~34–50MB
~702K SLoC