4 ms·
Is there such a tool for use with python? preferably matplotlib compatible. I often find myself needing to plot some data to get a quick idea of what it looks l
by rmeno12 3y ago
Is there such a tool for use with python? preferably matplotlib compatible. I often find myself needing to plot some data to get a quick idea of what it looks like, and my work is generally on a remote host. Having to open a new ssh session with X forwarding is not difficult but a more frictionless approach would be nice.
- abhishekbasu 3y agoThere are [1, 2], and AFAICT they rely on gnuplot [3]. [1] https://github.com/nschloe/termplotlib https://github.com/nschloe/termplotlib [2] https://github.com/dkogan/gnuplotlib https://github.com/dkogan/gnuplotlib [3] http://www.gnuplot.info/ http://www.gnuplot.info/
- dr_kiszonka 3y agoThe last time I used gnuplot was around 25 years ago. And it is still around!
- csdvrx 3y agoA few years ago, you had to recompile it to add sixel support on debian, so I provided https://github.com/csdvrx/sixel-gnuplot https://github.com/csdvrx/sixel-gnuplot Now it's included by default IIRC
- jrichardshaw 3y agoIf you happen to use `iTerm2`, then https://github.com/daleroberts/itermplot https://github.com/daleroberts/itermplot works very well. I've used it before and can recommend it pretty highly.
- folkrav 3y agoIs iTerm2 GPU accelerated? Wasn't aware it could do that kind of thing. I didn't use it in years, admittedly, haven't had a Mac for a while.
- fwlr 3y agoiTerm2 is GPU accelerated since 2018, yes. Other terminals on Mac that I know of (Kitty, Alacritty, Warp) are also GPU accelerated.
- enriquto 3y agoYou don't really need GPU acceleration for 2d graphics (and neither for simple 3D). The CPU is more than enough for that.
- folkrav 3y agoI understand, but without some kind of direct rendering going on, I can't see how this would work on a terminal emulator.
- enriquto 3y ago> without some kind of direct rendering going on, I can't see how this would work on a terminal emulator. Nah. You just dump the pixels one by one to the screen using a for loop. You can even do some cpu math with each pixel if you want, and at the end you call XPutImage with the raster (or whatever your toolkit offers). This runs at more than 30fps in fullhd on a 10 year old cpu. Notice that xterm is blazingly fast and runs entirely on the cpu. Think about it, the plots that this iterm2 demo shows were already done in realtime in the late nineties using the first pentium cpus. The GPU is not really needed for the basic stuff a terminal emulator does. Of course, if you want to do crazy stuff like scaling by enormous factors, or ultra-fast scroll without skipping tricks, you'll need GPU support.
- joouha 3y agoIf you use euporie [1], you can draw plots in a Jupyter notebook in the terminal using matotlib and friends, and have them displayed using terminal graphics. [1] https://github.com/joouha/euporie https://github.com/joouha/euporie
- aumerle 3y agoYup for years. https://github.com/jktr/matplotlib-backend-kitty https://github.com/jktr/matplotlib-backend-kitty
- lejalv 3y agoHave a look at Uniplot - https://github.com/olavolav/uniplot https://github.com/olavolav/uniplot