chartify


Namechartify JSON
Version 5.0.0 PyPI version JSON
download
home_pagehttps://github.com/spotify/chartify
SummaryPython library to make plotting simpler for data scientists
upload_time2024-10-16 11:59:17
maintainerNone
docs_urlNone
authorNone
requires_python<4,>=3.9
licenseApache 2
keywords chartify
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Chartify
========

![Status](https://img.shields.io/badge/Status-Beta-blue.svg)
![Latest release](https://img.shields.io/badge/Release-5.0.0-blue.svg "Latest release: 5.0.0")
![python](https://img.shields.io/badge/Python-3.9-blue.svg "Python 3.9")
![python](https://img.shields.io/badge/Python-3.10-blue.svg "Python 3.10")
![python](https://img.shields.io/badge/Python-3.11-blue.svg "Python 3.11")
![CI](https://github.com/spotify/chartify/workflows/Tox/badge.svg "Tox")

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 the API as intuitive and easy to learn as possible.
- Flexibility: Chartify is built on top of [Bokeh](http://bokeh.pydata.org/en/latest/), 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!](</examples/Examples.ipynb>).

Installation
------------

1. Chartify can be installed via pip:

`pip3 install chartify`

2. Install chromedriver requirement (Optional. Needed for PNG output):
    - Install google chrome.
    - Download the appropriate version of chromedriver for your OS [here](https://sites.google.com/chromium.org/driver/).
    - 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](https://github.com/spotify/chartify/blob/master/examples/Chartify%20Tutorial.ipynb) is the best place to get started with a guided tour of the core concepts of Chartify.

From there, check out the [example notebook](https://github.com/spotify/chartify/blob/master/examples/Examples.ipynb) for a list of all the available plots.

Docs
---------------

Documentation available on [chartify.readthedocs.io](https://chartify.readthedocs.io/en/latest/).

Getting support
---------------

Use the [chartify tag on StackOverflow](https://stackoverflow.com/questions/tagged/chartify).

Code of Conduct
---------------

This project adheres to the [Open Code of Conduct](https://github.com/spotify/code-of-conduct/blob/master/code-of-conduct.md). By participating, you are expected to honor this code.

Contributing
------------

[See the contributing docs](https://github.com/spotify/chartify/blob/master/CONTRIBUTING.rst).


=======
History
=======
5.0.0 (2024-10-16)

* Drop support for Python 3.8
* Add support for Python 3.11
* Fixes bad cropping in png introduced by changes to chrome webdriver
* Add support and recommendation to use make black for code formatting

4.0.5 (2023-10-12)
------------------

* Relaxed scipy and pandas version requirements to allow verions 2.x

4.0.4 (2023-08-23)
------------------

* Documentation build fix
* Pin tornado requirement to reduce vulnerability

4.0.3 (2023-04-21)
------------------

* Require jupyter_bokeh to enable html output

4.0.2 (2023-03-30)
------------------

* Fix categorical_order_by check for scatter plot
* Fix categorical_order_by check for _construct_source
* Refactor category sorting in _construct_source
* Add tests for categorical_order_by
* Fix scatter plot tests that used line plots

4.0.1 (2023-03-24)
------------------

* Updated version requirement of pillow to avoid bug

4.0.0 (2023-03-23)
------------------

* Dropped support for python 3.6 and 3.7

3.1.0 (2023-03-22)
------------------

* Added Boxplot Chart including example in examples notebook

3.0.5 (2022-12-13)
------------------

* Fixed a few errors in example and tutorial notebooks
* Fixed a typo in requirements.txt

3.0.4 (2022-10-18)
------------------

* Updated package requirements
* Got rid of future deprecation warnings
* Bugfix related to legend for graphs with multiple groups and colors

3.0.2 (2020-10-21)
------------------

* Support pyyaml 5.2+

3.0.1 (2020-06-02)
------------------

* Reduce dependencies by switching from Jupyter to IPython.

3.0.0 (2020-05-29)
------------------

* Updated Python to 3.6+ and Pandas to 1.0+ (Thanks @tomasaschan!)
* Updated Bokeh to 2.0+
* Removed colour dependency to fix setup errors.

2.7.0 (2019-11-27)
------------------

Bugfixes:

* Updated default yaml loader to move off of
  deprecated method (Thanks @vh920!)
* Updated legend handling to adjust for deprecated methods
  in recent versions of Bokeh (Thanks for reporting @jpkoc)
* Updated license in setup.py (Thanks for reporting @jsignell)
* Bump base Pillow dependency to avoid insecure version.
* Update MANIFEST to include missing files (Thanks @toddrme2178!)

2.6.1 (2019-08-15)
------------------

Bugfixes:

* Moved package requirements and fixed bug that occured with
  latest version of Bokeh (Thanks @emschuch & @mollymzhu!)
* Fixed bug in README while generating docs (Thanks @Bharat123rox!)

2.6.0 (2019-03-08)
------------------

Improvements:

* Allows users to plot colors on bar charts that aren't contained in the
  categorical axis.


Bugfixes:

* Fixed bug that caused float types to break when plotted with categorical
  text plots (Thanks for finding @danela!)
* Fixed broken readme links.

2.5.0 (2019-02-17)
------------------

Improvements:

* Added Radar Chart

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.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/spotify/chartify",
    "name": "chartify",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4,>=3.9",
    "maintainer_email": null,
    "keywords": "chartify",
    "author": null,
    "author_email": "chalpert@spotify.com",
    "download_url": "https://files.pythonhosted.org/packages/37/91/74cc94dea3308e773ede17c569037c82ba253045b0b57e32d3d5c563abc2/chartify-5.0.0.tar.gz",
    "platform": null,
    "description": "Chartify\n========\n\n![Status](https://img.shields.io/badge/Status-Beta-blue.svg)\n![Latest release](https://img.shields.io/badge/Release-5.0.0-blue.svg \"Latest release: 5.0.0\")\n![python](https://img.shields.io/badge/Python-3.9-blue.svg \"Python 3.9\")\n![python](https://img.shields.io/badge/Python-3.10-blue.svg \"Python 3.10\")\n![python](https://img.shields.io/badge/Python-3.11-blue.svg \"Python 3.11\")\n![CI](https://github.com/spotify/chartify/workflows/Tox/badge.svg \"Tox\")\n\nChartify is a Python library that makes it easy for data scientists to create charts.\n\nWhy use Chartify?\n-----------------\n\n- 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.\n- Smart default styles: Create pretty charts with very little customization required.\n- Simple API: We've attempted to make the API as intuitive and easy to learn as possible.\n- Flexibility: Chartify is built on top of [Bokeh](http://bokeh.pydata.org/en/latest/), so if you do need more control you can always fall back on Bokeh's API.\n\nExamples\n--------\n\n![](https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify1.png)\n![](https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify2.png)\n![](https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify3.png)\n![](https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify4.png)\n![](https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify5.png)\n![](https://raw.githubusercontent.com/spotify/chartify/master/docs/_static/chartify6.png)\n\n[See this notebook for more examples!](</examples/Examples.ipynb>).\n\nInstallation\n------------\n\n1. Chartify can be installed via pip:\n\n`pip3 install chartify`\n\n2. Install chromedriver requirement (Optional. Needed for PNG output):\n    - Install google chrome.\n    - Download the appropriate version of chromedriver for your OS [here](https://sites.google.com/chromium.org/driver/).\n    - Copy the executable file to a directory within your PATH.\n\t- View directorys in your PATH variable: `echo $PATH`\n\t- Copy chromedriver to the appropriate directory, e.g.: `cp chromedriver /usr/local/bin`\n\nGetting started\n---------------\n\nThis [tutorial notebook](https://github.com/spotify/chartify/blob/master/examples/Chartify%20Tutorial.ipynb) is the best place to get started with a guided tour of the core concepts of Chartify.\n\nFrom there, check out the [example notebook](https://github.com/spotify/chartify/blob/master/examples/Examples.ipynb) for a list of all the available plots.\n\nDocs\n---------------\n\nDocumentation available on [chartify.readthedocs.io](https://chartify.readthedocs.io/en/latest/).\n\nGetting support\n---------------\n\nUse the [chartify tag on StackOverflow](https://stackoverflow.com/questions/tagged/chartify).\n\nCode of Conduct\n---------------\n\nThis project adheres to the [Open Code of Conduct](https://github.com/spotify/code-of-conduct/blob/master/code-of-conduct.md). By participating, you are expected to honor this code.\n\nContributing\n------------\n\n[See the contributing docs](https://github.com/spotify/chartify/blob/master/CONTRIBUTING.rst).\n\n\n=======\nHistory\n=======\n5.0.0 (2024-10-16)\n\n* Drop support for Python 3.8\n* Add support for Python 3.11\n* Fixes bad cropping in png introduced by changes to chrome webdriver\n* Add support and recommendation to use make black for code formatting\n\n4.0.5 (2023-10-12)\n------------------\n\n* Relaxed scipy and pandas version requirements to allow verions 2.x\n\n4.0.4 (2023-08-23)\n------------------\n\n* Documentation build fix\n* Pin tornado requirement to reduce vulnerability\n\n4.0.3 (2023-04-21)\n------------------\n\n* Require jupyter_bokeh to enable html output\n\n4.0.2 (2023-03-30)\n------------------\n\n* Fix categorical_order_by check for scatter plot\n* Fix categorical_order_by check for _construct_source\n* Refactor category sorting in _construct_source\n* Add tests for categorical_order_by\n* Fix scatter plot tests that used line plots\n\n4.0.1 (2023-03-24)\n------------------\n\n* Updated version requirement of pillow to avoid bug\n\n4.0.0 (2023-03-23)\n------------------\n\n* Dropped support for python 3.6 and 3.7\n\n3.1.0 (2023-03-22)\n------------------\n\n* Added Boxplot Chart including example in examples notebook\n\n3.0.5 (2022-12-13)\n------------------\n\n* Fixed a few errors in example and tutorial notebooks\n* Fixed a typo in requirements.txt\n\n3.0.4 (2022-10-18)\n------------------\n\n* Updated package requirements\n* Got rid of future deprecation warnings\n* Bugfix related to legend for graphs with multiple groups and colors\n\n3.0.2 (2020-10-21)\n------------------\n\n* Support pyyaml 5.2+\n\n3.0.1 (2020-06-02)\n------------------\n\n* Reduce dependencies by switching from Jupyter to IPython.\n\n3.0.0 (2020-05-29)\n------------------\n\n* Updated Python to 3.6+ and Pandas to 1.0+ (Thanks @tomasaschan!)\n* Updated Bokeh to 2.0+\n* Removed colour dependency to fix setup errors.\n\n2.7.0 (2019-11-27)\n------------------\n\nBugfixes:\n\n* Updated default yaml loader to move off of\n  deprecated method (Thanks @vh920!)\n* Updated legend handling to adjust for deprecated methods\n  in recent versions of Bokeh (Thanks for reporting @jpkoc)\n* Updated license in setup.py (Thanks for reporting @jsignell)\n* Bump base Pillow dependency to avoid insecure version.\n* Update MANIFEST to include missing files (Thanks @toddrme2178!)\n\n2.6.1 (2019-08-15)\n------------------\n\nBugfixes:\n\n* Moved package requirements and fixed bug that occured with\n  latest version of Bokeh (Thanks @emschuch & @mollymzhu!)\n* Fixed bug in README while generating docs (Thanks @Bharat123rox!)\n\n2.6.0 (2019-03-08)\n------------------\n\nImprovements:\n\n* Allows users to plot colors on bar charts that aren't contained in the\n  categorical axis.\n\n\nBugfixes:\n\n* Fixed bug that caused float types to break when plotted with categorical\n  text plots (Thanks for finding @danela!)\n* Fixed broken readme links.\n\n2.5.0 (2019-02-17)\n------------------\n\nImprovements:\n\n* Added Radar Chart\n\n2.4.0 (2019-02-16)\n------------------\n\nImprovements:\n\n* Added second Y axis plotting.\n* Removed Bokeh loading notification on import (Thanks @canavandl!)\n* Added support for custom Bokeh resource loading (Thanks @canavandl!)\n* Added example for Chart.save() method (Thanks @david30907d!)\n\nBugfixes:\n\n* Updated documentation for saving and showing svgs.\n* Fixed bug that broke plots with no difference between min and max\n  points. (Thanks for finding @fabioconcina!)\n\n2.3.5 (2018-11-21)\n------------------\n\nImprovements:\n\n* Updated docstrings (Thanks @gregorybchris @ItsPugle!)\n* Added SVG output options to Chart.show() and Chart.save()\n  (Thanks for the suggestion @jdmendoza!)\n\nBugfixes:\n\n* Fixed bug that caused source label to overlap with xaxis labels.\n* Fixed bug that prevented x axis orientation changes\n  with datetime axes (Thanks for finding @simonwongwong!)\n* Fixed bug that caused subtitle to disappear\n  with `outside_top` legend location (Thanks for finding @simonwongwong!)\n* Line segment callout properties will work\n  correctly. (Thanks @gregorybchris!)\n\n2.3.4 (2018-11-13)\n------------------\n\n* Updated Bokeh version requirements to support 1.0\n\n2.3.3 (2018-10-24)\n------------------\n\n* Removed upper bound of Pillow dependency.\n\n2.3.2 (2018-10-18)\n------------------\n\n* Stacked bar and area order now matches default vertical legend order.\n* Added method for shifting color palettes.\n* Added scatter plots with a single categorical axis.\n* Fixed bug with text_stacked that occurred with multiple categorical levels.\n\n2.3.1 (2018-09-27)\n------------------\n\n* Fix scatter plot bug that can occur due to nested data types.\n\n2.3.0 (2018-09-26)\n------------------\n\n* Added hexbin plot type.\n* More control over grouped axis label orientation.\n* Added alpha control to scatter, line, and parallel plots.\n* Added control over marker style to scatter plot.\n* Added ability to create custom color palettes.\n* Changed default accent color.\n* Visual tweaks to lollipop plot.\n* Bar plots with a few number of series will have better widths.\n\n\n2.2.0 (2018-09-17)\n------------------\n\n* First release on PyPI.\n",
    "bugtrack_url": null,
    "license": "Apache 2",
    "summary": "Python library to make plotting simpler for data scientists",
    "version": "5.0.0",
    "project_urls": {
        "Homepage": "https://github.com/spotify/chartify"
    },
    "split_keywords": [
        "chartify"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fbf0196fabd4b56a6ed5fe62f7ef160f8006c6a9a60d1839eb363e5d166d0840",
                "md5": "5931e36daa1e4a33a310f953c9baca2d",
                "sha256": "f7ccd24932853e3b9a06469d36fb10246eb97afa584d43874c37f410352c4017"
            },
            "downloads": -1,
            "filename": "chartify-5.0.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5931e36daa1e4a33a310f953c9baca2d",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": "<4,>=3.9",
            "size": 64006,
            "upload_time": "2024-10-16T11:59:15",
            "upload_time_iso_8601": "2024-10-16T11:59:15.872554Z",
            "url": "https://files.pythonhosted.org/packages/fb/f0/196fabd4b56a6ed5fe62f7ef160f8006c6a9a60d1839eb363e5d166d0840/chartify-5.0.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "379174cc94dea3308e773ede17c569037c82ba253045b0b57e32d3d5c563abc2",
                "md5": "5395fed7b28e3e954f974bfe3cefa633",
                "sha256": "4d6302012a47c57c4fbbd00c2abb6b263f87b5ba38820ab88a7564304177a9d1"
            },
            "downloads": -1,
            "filename": "chartify-5.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "5395fed7b28e3e954f974bfe3cefa633",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4,>=3.9",
            "size": 4152591,
            "upload_time": "2024-10-16T11:59:17",
            "upload_time_iso_8601": "2024-10-16T11:59:17.836861Z",
            "url": "https://files.pythonhosted.org/packages/37/91/74cc94dea3308e773ede17c569037c82ba253045b0b57e32d3d5c563abc2/chartify-5.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-16 11:59:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "spotify",
    "github_project": "chartify",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "tox": true,
    "lcname": "chartify"
}
        
Elapsed time: 0.32079s