matrach / matplotlib-terminal

Matplotlib backend to plot in terminal using matrach/img2unicode
MIT License
51 stars 2 forks source link

matplotlib-terminal

Matplotlib backend to plot in terminal using matrach/img2unicode

This is in proof of concept stage, so stay tuned! The library is optimized for Gnome Terminal with Ubuntu Mono font. Nevertheless 'block' and 'braille' renderers should work with most modern terminals.

Install it with:

$ pip install matplotlib-terminal

To speed ~10x up the braille and gamma renderers, install an optional dependency of img2unicode:

$ pip install 'img2unicode[n2]'

Alternatives, which operate on raster output

Usage:

import matplotlib_terminal
import matplotlib.pyplot as plt
# Or in short:
# from matplotlib_terminal import plt

plt.plot([0, 1], [0, 1])
plt.plot([1, 0], [0, 1], lw=3)
plt.scatter([0], [.5])

plt.show()
plt.show('gamma') # Use RendererGamma-fast/noblock from img2unicode renderer
plt.show('block') # Use Renderer-fast/block from img2unicode, dual color!
plt.show('braille') # Use RendererGamma-fast/braille from img2unicode renderer
plt.close()

Sample results

Gamma renderer: gamma renderer Block renderer: block renderer Braille renderer: braille renderer

TODO