Skip to main content

Python library to make plotting simpler for data scientists

Project description

status release python

Chartify is a Python library that makes it easy for data scientists to create charts.

Why use Chartify?

  • Consistent input data format: Spend less time transforming data to get your charts to work. All plotting functions use a consistent tidy input data format.

  • Smart default styles: Create pretty charts with very little customization required.

  • Simple API: We’ve attempted to make to the API as intuitive and easy to learn as possible.

  • Flexibility: Chartify is built on top of Bokeh, so if you do need more control you can always fall back on Bokeh’s API.

Examples

https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify1.png https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify2.png https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify3.png https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify4.png https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify5.png https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify6.png

See this notebook for more examples!.

Installation

  1. Chartify can be installed via pip:

pip3 install chartify

  1. Install chromedriver requirement (Optional. Needed for PNG output):
    • Install google chrome.

    • Download the appropriate version of chromedriver for your OS here.

    • Copy the executable file to a directory within your PATH.
      • View directorys in your PATH variable: echo $PATH

      • Copy chromedriver to the appropriate directory, e.g.: cp chromedriver /usr/local/bin

Getting started

This tutorial notebook is the best place to get started with a guided tour of the core concepts of Chartify.

From there, check out the example notebook for a list of all the available plots.

Getting support

Join #chartify on spotify-foss.slack.com (Get an invite)

Use the chartify tag on StackOverflow.

Code of Conduct

This project adheres to the Open Code of Conduct. By participating, you are expected to honor this code.

Contributing

See the contributing docs.

History

2.4.0 (2019-02-16)

Improvements:

  • Added second Y axis plotting.

  • Removed Bokeh loading notification on import (Thanks @canavandl!)

  • Added support for custom Bokeh resource loading (Thanks @canavandl!)

  • Added example for Chart.save() method (Thanks @david30907d!)

Bugfixes:

  • Updated documentation for saving and showing svgs.

  • Fixed bug that broke plots with no difference between min and max points. (Thanks for finding @fabioconcina!)

2.3.5 (2018-11-21)

Improvements:

  • Updated docstrings (Thanks @gregorybchris @ItsPugle!)

  • Added SVG output options to Chart.show() and Chart.save() (Thanks for the suggestion @jdmendoza!)

Bugfixes:

  • Fixed bug that caused source label to overlap with xaxis labels.

  • Fixed bug that prevented x axis orientation changes with datetime axes (Thanks for finding @simonwongwong!)

  • Fixed bug that caused subtitle to disappear with outside_top legend location (Thanks for finding @simonwongwong!)

  • Line segment callout properties will work correctly. (Thanks @gregorybchris!)

2.3.4 (2018-11-13)

  • Updated Bokeh version requirements to support 1.0

2.3.3 (2018-10-24)

  • Removed upper bound of Pillow dependency.

2.3.2 (2018-10-18)

  • Stacked bar and area order now matches default vertical legend order.

  • Added method for shifting color palettes.

  • Added scatter plots with a single categorical axis.

  • Fixed bug with text_stacked that occurred with multiple categorical levels.

2.3.1 (2018-09-27)

  • Fix scatter plot bug that can occur due to nested data types.

2.3.0 (2018-09-26)

  • Added hexbin plot type.

  • More control over grouped axis label orientation.

  • Added alpha control to scatter, line, and parallel plots.

  • Added control over marker style to scatter plot.

  • Added ability to create custom color palettes.

  • Changed default accent color.

  • Visual tweaks to lollipop plot.

  • Bar plots with a few number of series will have better widths.

2.2.0 (2018-09-17)

  • First release on PyPI.

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

chartify-2.4.0.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

chartify-2.4.0-py2.py3-none-any.whl (44.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file chartify-2.4.0.tar.gz.

File metadata

  • Download URL: chartify-2.4.0.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.3.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for chartify-2.4.0.tar.gz
Algorithm Hash digest
SHA256 095e3a0c7b96b21fe32898541276ed817dd950210fe2f7daffb11be1a6812748
MD5 e38c36a3e9cc092dfff463cff95c0602
BLAKE2b-256 d9be4a71a9bd002d8cb6664f3da1b3d3b00d16c95d73243078245ef0f702a918

See more details on using hashes here.

File details

Details for the file chartify-2.4.0-py2.py3-none-any.whl.

File metadata

  • Download URL: chartify-2.4.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 44.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.3.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.5

File hashes

Hashes for chartify-2.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e6614181556b430befdc0849aa26e0eb448544104cfee093b007ad09292206d3
MD5 adadd24f06aeff52d3f27cd81d9a1c62
BLAKE2b-256 b1fd46918a6270a574b253a67dac9467b03f1ca4e9239c0dd255640e26b4e487

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