
Termgraph: Python CLI Tool to Draw Graphs - subbz
https://github.com/mkaz/termgraph
======
anon335dtzbvc
I can also recommend:

[https://github.com/kroitor/asciichart](https://github.com/kroitor/asciichart)
(JS, Py)

[https://github.com/guptarohit/asciigraph](https://github.com/guptarohit/asciigraph)
(Go)

[https://github.com/madnight/asciichart](https://github.com/madnight/asciichart)
(Haskell)

------
danso
Very nice. The agate library (by the same author of csvkit) also prints out
text charts, though I don't think it has a CLI:
[http://agate.readthedocs.io/en/1.6.1/](http://agate.readthedocs.io/en/1.6.1/)

------
ziotom78
A similar idea is used in UnicodePlots [1], a Julia terminal plotting library.
This kind of tools is very useful when you are connected to some HPC cluster
and want to have a quick look at the contents of data files.

Of course, the approach is quite different, as Termgraph seems a stand-alone
program, while UnicodePlots is a library.

[1]
[https://github.com/Evizero/UnicodePlots.jl](https://github.com/Evizero/UnicodePlots.jl)

------
zenethian
I love this. It feels like a solution to a problem I never knew I had. I'm a
very visual thinker, and there have been so many times where I wish I could
summarize a volume of data into graphs without loading up Sheets.

~~~
rabidrat
You might want to try VisiData ([https://visidata.org](https://visidata.org)),
for visual terminal-based exploration of data. Everyone loves the 'Shift+F'
Frequency Table with histogram. Can also do scatter plots, filtering,
transformation, and export.

[Disclaimer: I'm the creator of VisiData]

~~~
brennebeck
This looks extremely useful. Thank you.

------
make3
I wish you could display images in the command line. it would have so many
cool applications

~~~
anonyte
There are some terminals and/or protocols that support this:

* [https://en.m.wikipedia.org/wiki/ReGIS](https://en.m.wikipedia.org/wiki/ReGIS)

* [https://en.m.wikipedia.org/wiki/Sixel](https://en.m.wikipedia.org/wiki/Sixel)

* [https://en.m.wikipedia.org/wiki/Tektronix_4010](https://en.m.wikipedia.org/wiki/Tektronix_4010)

Some code:

* [https://github.com/saitoha/PySixel/](https://github.com/saitoha/PySixel/)

* [https://github.com/eliukblau/pixterm](https://github.com/eliukblau/pixterm)

~~~
afranchuk
Kitty terminal can too, and has designed a protocol for it:
[https://github.com/kovidgoyal/kitty/blob/master/docs/graphic...](https://github.com/kovidgoyal/kitty/blob/master/docs/graphics-
protocol.rst)

~~~
laumars
There are so many unofficial escape sequences for rendering images in modern
terminal emulators. Kitty has one, as does Terminology and iTerm (both
different from each other). Then there is stuff like Sixel (supported by
xterm), ReGIS (also supported by xterm but it's horrible to use) and other
methods from VTs of old.

I really wish there was just one standard way to render images on the terminal
(like there is one standard for rendering hyperlinks on the terminal), but
there's an XKCD sketch somewhere about creating a standard to consolidate
standards.

~~~
vram11
This one:

[https://imgs.xkcd.com/comics/standards.png](https://imgs.xkcd.com/comics/standards.png)

------
m1keil
very nice. reminds me of
[https://github.com/bitly/data_hacks](https://github.com/bitly/data_hacks)

------
ebikelaw
gnuplot> set term xterm

------
glic3rinu
would be nice if plots scale according to terminal width, so they fit in the
screen without line wrapping :)

------
cup-of-tea
I actually wrote one of these myself years ago. I never finished it up for
general use because I thought "someone must have done this already" so I just
left it as a "util" buried in some project. I always seem to think the same
thing.

~~~
lifeisstillgood
we all do - the difference is moving from scratching your itch to advertising
your itch scratcher- find another one of your projects and show HN - worst
case, you get to polish up some code

