All Projects → mogenson → ploot

mogenson / ploot

Licence: MIT license
Plot streaming data from stdin to a tty terminal

Programming Languages

rust
11053 projects
shell
77523 projects

Projects that are alternatives of or similar to ploot

Ttyplot
a realtime plotting utility for terminal/console with data input from stdin
Stars: ✭ 532 (+885.19%)
Mutual labels:  pipe, plot
ntee
Portable Unix shell command 'tee', with some extras - read from standard input and write to standard output and files
Stars: ✭ 22 (-59.26%)
Mutual labels:  pipe, stdin
rush
R One-Liners from the Shell
Stars: ✭ 44 (-18.52%)
Mutual labels:  plot
multigraph
multigraph: Plot and Manipulate Multigraphs in R
Stars: ✭ 18 (-66.67%)
Mutual labels:  plot
tallboy
Declarative API for drawing unicode/ascii character tables in crystal lang
Stars: ✭ 49 (-9.26%)
Mutual labels:  tty
maptalks.plot
🎨 | maptalks plot
Stars: ✭ 19 (-64.81%)
Mutual labels:  plot
charter
DSL and C Library to generate SVG Plot
Stars: ✭ 39 (-27.78%)
Mutual labels:  plot
sigstar
add significance stars to MATLAB plots
Stars: ✭ 33 (-38.89%)
Mutual labels:  plot
castty
A CLI tool to record audio-enabled screencasts of your terminal, for the web.
Stars: ✭ 109 (+101.85%)
Mutual labels:  tty
fem mesh matlab
MATLAB Toolbox for Handling 2D and 3D FEM Meshes
Stars: ✭ 23 (-57.41%)
Mutual labels:  plot
ngx-timeago
⏰ Live updating timestamps in Angular 6+
Stars: ✭ 70 (+29.63%)
Mutual labels:  pipe
Glimma
Glimma R package
Stars: ✭ 48 (-11.11%)
Mutual labels:  plot
pipe
Functional Pipeline in Go
Stars: ✭ 30 (-44.44%)
Mutual labels:  pipe
pipeffmpeg
A frontend for ffmpeg using only pipes, not under GPL, but under BSD license.
Stars: ✭ 56 (+3.7%)
Mutual labels:  pipe
networker
🔧 A simple CLI tool for various networking operations
Stars: ✭ 20 (-62.96%)
Mutual labels:  tty
clusterix
Visual exploration of clustered data.
Stars: ✭ 44 (-18.52%)
Mutual labels:  plot
Goodreads visualization
A Jupyter notebook where I play with my Goodreads data
Stars: ✭ 51 (-5.56%)
Mutual labels:  plot
tty-platform
Operating system detection
Stars: ✭ 28 (-48.15%)
Mutual labels:  tty
distfit
distfit is a python library for probability density fitting.
Stars: ✭ 250 (+362.96%)
Mutual labels:  plot
dotfiles
Linux configuration files (dotfiles) and some useful scripts
Stars: ✭ 22 (-59.26%)
Mutual labels:  tty

Ploot

Plot streaming data from stdin to a tty terminal. Useful for displaying data piped from a serial port or long running process.

Example

Project used to be called ttyplot-rs.

Install

$ git clone https://github.com/mogenson/ploot.git
$ cd ploot
$ cargo build # or cargo install --path .

Usage

Pipe data from a process into ploot. Press ctrlc to quit.

Data format

Each line of data points can be positive or negative floating point numbers, separated by spaces. Ex: 1 2.3 -4.56. A new frame of one to multiple series of data points is shown when a newline character is received. Statistics like minimum, maximum, average, and current value are shown for the visible data for each series.

Options

-m, --min <min>        Lower bound of window (default: largest data point in window)
-M, --max <max>        Upper bound of window (default: smallest data point in window)
-w, --width <width>    Number of data points to display in window (default: terminal width)
-f, --file <file>      Log received data to file in CSV format

Copy ploot.bash to /usr/share/bash-completion/completions for command line tab-completion of options. A bash completion script can also be generated with the --completions flag.

Examples

# build example program
$ rustc feed_input.rs
$ ./feed_input | ploot
# serial port
$ cat /dev/ttyUSB0 | ploot
# CPU percentage
$ sar 1 | awk '{ print 100.0-$NF; fflush(); }' | ploot 
# ping time
$ ping 8.8.8.8 | awk -F '[= ]' '{ print 0+$(NF-1); fflush(); }' | ploot
# bash saw wave
$ for ((i=0;; i++)); do echo `expr $i % 20`; sleep 0.1; done | ploot 

Acknowledgment

Inspired by ttyplot. Some difference include: ploot can plot negative values and an arbitrary number of concurrent series, data window width can be specified, data points are plotted with points instead of bars, data rate is not calculated or plotted.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].