Skip to content

hanjinliu/whitecanvas

Repository files navigation

whitecanvas

PyPI - Version Python package index download statistics codecov PyPI - Python Version

A type safe and backend independent plotting library for Python, aiming at not the simplest, but the tidiest API.

Installation

pip install whitecanvas -U

Project Philosophy

Type safety

All the methods should be designed to have nice signature, and should return the same type of object, so that your program can be statically checked by the IDE.

Backend independency

Every plotting library has their own strength and weakness. Same code should work on different backends, so that you can choose the best one for different purposes.

Currently supported backends are matplotlib, pyqtgraph, vispy, plotly and bokeh. If you want other backends, please feel free to open an issue.

API tidiness

Most of (probably all of) the plotting libraries rely on the large number of arguments to configure the plot elements. They are usually hard to remember, forcing you to look up the documentation every time you want to make a plot.

whitecanvas tries to organize the methods, namespaces and arguments carefully so that you can make any kind of plot only with the help of the IDE's auto-completion and suggestions.

Documentation

Documentation is available here.

Examples

→ Find more examples

Rain-cloud plot in matplotlib

→ source

Super plot in matplotlib

→ source

Joint plot in matplotlib

→ source

Heatmap with text in pyqtgraph

→ source

Curve fitting in bokeh

→ source