libsixel
feedgnuplot
libsixel | feedgnuplot | |
---|---|---|
23 | 16 | |
2,391 | 698 | |
- | - | |
0.0 | 5.1 | |
9 months ago | 3 months ago | |
C | Perl | |
MIT License | GNU General Public License v3.0 or later |
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.
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
feedgnuplot
-
Brplot โ plotting app/lib in C
Thanks for the post. The obvious comparison is feedgnuplot: https://github.com/dkogan/feedgnuplot/
That works similarly in that it plots standard input. The backend is gnuplot, which is a double-edged sword: it's far more full-featured than brplot, but almost certainly is much slower also. I'll try out brplot to see if it would be a good replacement for cases where speed is important. Thanks!
- Feedgnuplot: Visualize the output of ANY commandline tool
-
A command line tool that draw plots on the terminal
Oh hey Dima.
Feedgnuplot is really slick.
https://github.com/dkogan/feedgnuplot
It's in the debian repos too.
-
D2: A new declarative language to turn text into diagrams
Is there a declarative language or framework to create ad-hoc GUIs that consume structured data from stdin stream and spit-out a GUI?
Like feedgnuplot [1] but not only restricted to graphs.
[1] https://github.com/dkogan/feedgnuplot
-
jupyter and vim
I found using shell as an interactive environment to be pretty productive using https://github.com/dkogan/feedgnuplot and https://github.com/dkogan/vnlog. The filesystem becomes your state (instead of in memory state of your Python interpreter) which forces you to write Unix-style tools. Plotting with feedgnuplot spins up an interactive Qt plotter which I often used to explore 3D plots. It's not "inline" and fancy and does take a bit of grokking but I eventually found it more productive than Jupyter, especially as my development moved away from Python.
-
termplotlib: Plots in the terminal
One of the tools I absolutely love is feedgnuplot which presents a stdin CLI interface to gnuplot.
-
Anyone know of a good Data Visualization Library?
Also, if one doesn't want to learn Gnuplot's DSL try using feedgnuplot which presents a stdin interface for whitespace delimited tabular data.
- Show HN: Simple tool for creating commandline bar charts
- Git 2.33 released with new โmerge-ortโ merging with 500~9000x speed-up
-
Best scientific graphing library?
Write space delimited tabular data (ideally in vnlog format) and plot it using feedgnuplot. Also helps decouple concerns (data generating application focuses on generating data).
What are some alternatives?
sixvid - Simple script for animated GIF viewing using sixels
implot - Immediate Mode Plotting
mpv - ๐ฅ Command line video player
matplotlib-cpp - Extremely simple yet powerful header-only C++ plotting library built on the popular matplotlib
chafa - ๐บ๐ฟ Terminal graphics for the 21st century.
ttyplot - a realtime plotting utility for terminal/console with data input from stdin
xterm-addon-image - Image addon for xterm.js
plotext - plotting on terminal
urxvt-perls - Perl extensions for the rxvt-unicode terminal emulator
matplotlib - C++ wrappers around python's matplotlib
urxvt-perls - Perl extensions for the rxvt-unicode terminal emulator
matplotplusplus - Matplot++: A C++ Graphics Library for Data Visualization ๐๐พ