asciietch

A library for graphing charts using ascii characters.


License
OSET-PL-2.1
Install
pip install asciietch==1.0.4

Documentation

Ascii Etch License Build Status Coverage Status

A graphing library with the goal of making it simple to graph series of numbers using ascii characters.

Quick Start

To start using Ascii Etch ensure Python 3.6 or higher is installed. Then install asciietch using pip3.6 or higher:

pip3 install asciietch

Then import asciietch and begin using it.

Examples

Graphing 0-4 values as a line graph

>>> from asciietch.graph import Grapher
>>> g = Grapher()
>>> values = [0, 1, 2, 3, 4]
>>> print(g.asciigraph(values))
    -
   /
  /
 /
/

Graphing 0-4 values as a histogram

>>> from asciietch.graph import Grapher
>>> g = Grapher()
>>> values = [0, 1, 2, 3, 4]
>>> print(g.asciihist(values))
▁▃▅▆█

Graphing more values

>>> from asciietch.graph import Grapher
>>> g = Grapher()
>>> values = [0, 1, 2, 3, 4, 4, 3, 2, 1, 2, 2, 2]
>>> print(g.asciigraph(values))
    --
   /  \
  /    \ ---
 /      -
/
>>> print(g.asciihist(values))
▁▃▅▆██▆▅▃▅▅▅

Graphing a large set of values and adding labels

>>> import random
>>> from asciietch.graph import Grapher
>>> g = Grapher()
>>> values = []
>>> v = 0
>>> for i in range(1000):
...     v = v + random.randint(-1, 1)
...     values.append(v)
>>> print(g.asciigraph(values, max_height=10, max_width=100, label=True))
Upper value: 147.6 *********************************************************************************
                             -------- ---                                                           
                        ----/        -   \-      -                                                  
                   ----/                   \----/ \--                                               
                 -/                                  \                                              
----        ----/                                     \------      -  ----                          
    \------/                                                 \----/ \/    \-                        
                                                                            \--                     
                                                                               \-------             
                                                                                       \------      
                                                                                              \-   -
                                                                                                \-/ 
Lower value: 85.3 ********************************************* Mean: 122.196 *** Std Dev: 16.20 ***

Developing

git clone git@github.com:linkedin/asciietch.git
cd asciietch
python3 setup.py venv
source activate
python3 setup.py develop

Testing

pip3.6 install tox
tox

Contributing Code

Contributions are welcome, see Contribution guidelines for this project