beautiful charts in the terminal for static or streaming data
C Shell
Switch branches/tags
Nothing to show
Latest commit 4a6f2ae Mar 11, 2013 @tj Release 0.0.2
Permalink
Failed to load latest commit information.
deps update term.c Jan 26, 2013
examples tweak example Jan 26, 2013
src Release 0.0.2 Mar 11, 2013
.gitignore add basic commander setup Jan 26, 2013
Makefile add install and uninstall targets Jan 26, 2013
Readme.md
package.json remove .src from package.json Jan 26, 2013

Readme.md

Histo

Plot charts in the terminal with arbitrary streaming or non-streaming data.

$ histo < data.txt

terminal histogram

Features

  • simple input via stdin
  • simple C API for integration in your tools
  • supports static or streaming data
  • adjusts to terminal width and height
  • adjusts x-axis labels to the integer size
  • negative values reflect as shaded blocks

Use-cases

  • cpu usage
  • memory usage
  • load averages
  • ...

Installation

With cpm:

$ cpm install visionmedia/histo

Or via git clone:

$ cd /tmp && git clone git://github.com/visionmedia/histo.git --depth 1 && cd histo && make install

Examples

histo(1) simply reads from stdin, so it works well with streaming or non-streaming data, from any data source. This repo includes some example files in ./examples, as well as some example shell scripts for streaming input.

Static input

histo(1) simply reads from stdin, so it's easy to throw static data at it for quick analysis:

1
4
5
12
8
15
18
20
5
2
1
5
2
10
2

Displayed with:

$ histo < example.txt

Dynamic input

You may stream data to histo(1) and tell it to quit with EOF, for example here's a small shell script to generate some random data:

while true; do
  echo $RANDOM
  sleep .5
done | histo

Screenshots

Negative values are shown as shaded blocks:

histogram with negative values

Adjusts properly to the size of the terminal:

size adjustment

tall

License

MIT