Skip to main content

Library to print piecharts in your terminal

Project description

Term-Piechart

Tests codecov PyPI - Python Version

Displays pie charts in your terminal. This is a direct python rewrite of the Ruby Gem TTY-Pie. Maybe someone else would find this usefull as well. It requires no external dependencies and supports ASCII and HEX color codes as well as automatic generation of random colors.

Installation

python -m pip install term-piechart

Examples

from term_piechart import Pie

requests = [
    {"name": "GET", "value": 9983},
    {"name": "POST", "value": 7005},
    {"name": "DELETE", "value": 3323},
    {"name": "PUT", "value": 2794},
    {"name": "PATCH", "value": 1711},
]

pie = Pie(
    requests,
    radius=5,
    autocolor=True,
    autocolor_pastel_factor=0.7,
    legend={"line": 0, "format": "{label} {name:<8} {percent:>5.2f}% [{value}]"},
)

More in examples

Class Arguments:

  • data (default: []): A list of dicts with following elements representing the slices
    • name: Name of the element
    • value: Value of the element
    • fill (default: ): String to fill the slice with
    • color: Hexcode or ANSII Colorname
  • radius (default: 10): Amount of columns/rows as the radius to change size
  • autocolor (default: False): Can be enabled if there are no colors specified in the data dict
  • autocolor_pastel_factor (default: 0): Can be increased until 1
  • fill (default: ): Overwrite the fill symboll for every element
  • legend (default: True): Can be disabled via False or configured with a dict with those keys:
    • line (default: 1): Number of lines between legend elements
    • left (default: 4): Number of spaces between chart and left of legend
    • format (default: {label} {name} {percent:.2f}): Supports {value} as well
  • aspect_ratio (default: 2): Aspect ratio of the printed chart
  • top (default: None): Amount of rows from top of the visible terminal
  • left (default: None): Amount of columns from the left of the visible terminal

References

term-piechart is a direct python derivate of:

Developement

Tox

There's a minimal tox.ini with a requirement on pyenv and un-def/tox-pyenv-redux. Zsh users can use this as a reference.

curl https://pyenv.run | bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
. ~/.zshrc
pyenv install -s 3.12 3.11 3.10 3.9 3.8
tox

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

term_piechart-0.1.3.tar.gz (27.8 kB view details)

Uploaded Source

Built Distribution

term_piechart-0.1.3-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file term_piechart-0.1.3.tar.gz.

File metadata

  • Download URL: term_piechart-0.1.3.tar.gz
  • Upload date:
  • Size: 27.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for term_piechart-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b2e97101b0d09ab4797de532f390470d72d50fd500791a7de1747edbb94470ad
MD5 eced24d760304c3c7562864c6c17d686
BLAKE2b-256 5ecfa7725c04ab2931482de8c4c3fca169bdfe6263ba5e237cad940df84eef29

See more details on using hashes here.

File details

Details for the file term_piechart-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for term_piechart-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9a4ca340a88394d554f55741a83a1cbfc8b109275a5d51ebc050a6755c13b30d
MD5 12f589e4c1147c514410e3d8c9192ea1
BLAKE2b-256 a6206df4f89cca158f3198d8d95cbb387beeebf0c3e5be884c1dfb085a5d21a8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page