plotext
libsixel
plotext | libsixel | |
---|---|---|
8 | 23 | |
1,645 | 2,391 | |
- | - | |
7.1 | 0.0 | |
4 months ago | 9 months ago | |
Python | C | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
plotext
-
Visualizing Data in the Terminal: A Simple Guide to Building a Customized Data Visualization Tool
To plot the graph, we will use a python package called plotext. Plotext lets you plot scatter, line, bar, histogram, and date-time plots (including candlesticks) directly on the terminal. First, we need to install this package.
-
A command line tool that draw plots on the terminal
Plotext works similar but isn't as magical.
https://github.com/piccolomo/plotext
-
Show HN: Simple tool for creating commandline bar charts
nice little project :)
on a tangent I was playing with https://github.com/piccolomo/plotext for a bit (especially on a data analysis server connected over ssh it's quite useful, if you don't have the bandwidth to start a jupyter notebook).
-
Zettelkasten Using Vim and Github
I have shared my Zettelkasten before, but I stumbled across plotext today. It creates plots and displays them directly in the terminal. I wrote a little python script that parses all my notes, aggregates them according to the month they were written and then plots them in a time series. Super fun little project. If your notes are file names formatted as `yyyymmddHHMM` the script should work for you as well. Hopefully someone else finds this useful.
- piccolomo/plotext: plotting on terminal
-
plotext: plotting on terminal
There’s a ticket for that https://github.com/piccolomo/plotext/issues/26
- Plotext – Python Plotting on the Terminal
libsixel
- GNU/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way
-
VT330/VT340 Sixel Graphics
Library you can use to generate these images:
https://github.com/saitoha/libsixel
Plenty of links to other projects.
- UnicodePlots
-
Forking Chrome to Render in a Terminal
Sixels are pixels and enjoy a wide support due to how old it is.
Kitty protocol is PNG or primitives - which BTW would make it great for a GUI library.
Different tools for different needs, but if you are going for a wide support you want something simple that doesn't have 5 different types you have to separately implement and test:
> d: Direct (the data is transmitted within the escape code itself)
> f: A simple file (regular files only, not named pipes or similar)
> t: A temporary file, the terminal emulator will delete the file after reading the pixel data. For security reasons the terminal emulator should only delete the file if it is in a known temporary directory, such as /tmp, /dev/shm, TMPDIR env var if present and any platform specific temporary directories and the file has the string tty-graphics-protocol in its full file path.
> s: A shared memory object, which on POSIX systems is a POSIX shared memory object and on Windows is a Named shared memory object. The terminal emulator must read the data from the memory object and then unlink and close it on POSIX and just close it on Windows.
> What nonsense, it takes literally 15 lines of code without using anything beyond the standard library to write a client
Conveniently taking a preencoded PNG and assuming away the necessary queries of supported protocol:
> Since a client has no a-priori knowledge of whether it shares a filesystem/shared memory with the terminal emulator, it can send an id with the control data, using the i key (which can be an arbitrary positive integer up to 4294967295, it must not be zero).
> for the kitty graphics protocol. I challenge you to match that for sixel
https://github.com/saitoha/libsixel/tree/master/perl
use Image::LibSIXEL;
-
A command line tool that draw plots on the terminal
Also:
https://github.com/saitoha/libsixel
contains img2sixel, which lets you dump images to the terminal. It can also do animated GIFs.
Video:
https://github.com/saitoha/FFmpeg-SIXEL
GUI apps:
https://github.com/saitoha/SDL1.2-SIXEL
and more, linked from the libsixel repository.
-
Emacs on an iPad
Not sure of Terminal emulator capabilities on Apple devices, but thanks to https://github.com/saitoha/libsixel , several applications, including emacs very much support image output in terminals.
- Libsixel
-
What color do you use for your terminal?
You don't have multi-colored terminal output? Even legacy systems have long had Sixel support.
-
Are We Sixel Yet?
> SIXEL is one of image formats for printer and terminal imaging introduced by Digital Equipment Corp. (DEC). Its data scheme is represented as a terminal-friendly escape sequence. So if you want to view a SIXEL image file, all you have to do is "cat" it to your terminal
https://github.com/saitoha/libsixel
- Saw a few console apps and thought I might pitch in/show my own graphics library for the C# Console: The BasicRender Suite
What are some alternatives?
barchart - Make bar charts on the terminal.
sixvid - Simple script for animated GIF viewing using sixels
gnuplotlib - gnuplot for numpy
mpv - 🎥 Command line video player
feedgnuplot - Tool to plot realtime and stored data from the commandline, using gnuplot.
chafa - 📺🗿 Terminal graphics for the 21st century.
matplotlib-terminal - Matplotlib backend to plot in terminal using matrach/img2unicode
xterm-addon-image - Image addon for xterm.js
UnicodePlots.jl - Unicode-based scientific plotting for working in the terminal
urxvt-perls - Perl extensions for the rxvt-unicode terminal emulator
Zettelkasten - My personal zettelkasten.
urxvt-perls - Perl extensions for the rxvt-unicode terminal emulator