top | item 27875217

Feedgnuplot – plotting standard input in the shell

57 points| dima55 | 4 years ago |github.com | reply

6 comments

order
[+] JensRantil|4 years ago|reply
I started using Feedgnuplot a few weeks ago after getting tired of the complexities of plotting the data output from AWK and other CLI utilities. My options were preciously to install Matplotlib (including Python virtualenv) or GNUplot, remembering the exact commands to read a CSV format, plot and output to a window/PNG. Or needing a spreadsheet. Feedgnuplot makes all this a breeze. I'm a happy man now.
[+] dima55|4 years ago|reply
If you're massaging and plotting tabular text data, take a look at vnlog too: https://github.com/dkogan/vnlog/

Works wonderfully in the shell, in conjunction with feedgnuplot for plotting.

[+] vietjtnguyen|4 years ago|reply
I use https://github.com/dkogan/vnlog/ and feedgnuplot for $WORK and it strikes a wonderful balance of simplicity and effectiveness for both quick data exploration and shell scripted data analysis and report generation.

What took me a bit to grok at the start was how feedgnuplot's different flags change how it assigns semantic meaning to different data columns. So by default the first column is simply treated as data (y) while the implicit row index becomes the x axis. If you add --domain the first column becomes your domain (x) and the second column your data (y) allowing you to create a scatter plot. If you have multiple curves you can add --dataid with --domain which makes the first column x, the second column the id of the curve that point belongs to, and the third column the data itself (y). You can throw in more dimensions of visualization by mapping columns to colors, point size, or 3d.

Typing it out it sounds more complicated than it really is. Combined with vnlog to easily select columns and filter rows it becomes a really powerful command line tool set.

[+] zorba20002|4 years ago|reply
This is great. I had this problem of running Tensorflow from ssh and sometimes you just want to take a quick look at the plots without Tensorboard setup and whatnot. Thanks!