Skip to main content

Tidy API for statistical visualization with Plotly

Project description

Statsplotly is a Python data visualization library based on Plotly. It provides a high-level interface for drawing attractive and interactive statistical data visualization plots.

The inception of this library predated the fantastic plotly.express API.

Philosophy

Compared to plotly.express API, statsplotly :

  • respects common conventions of statistical visualization (e.g., histograms are not barplots).
  • processes color coding scheme, trace slicer and plot dimensions independently.
  • can perform standard statistical processing procedure (e.g., zscore normalization) of data under the hood.
  • leverages the tidy DataFrame structure to easily style plot cues to be used as visual discriminators (e.g., marker color, symbol, size, and opacity).

This flexibility takes advantage of the powerful interactivity offered by plotly.js without compromising statistical intelligibility for aesthetic choices, or vice-versa.

Examples

Main features of the API are demonstrated in a demo notebook.

statsplotly-demo

Installation

Using Pip

pip install statsplotly

Documentation

Details of the public API can be found in the documentation.

Development

Using Poetry

First make sure you have Poetry installed on your system (see instruction).

Then, assuming you have a Unix shell with make, create and set up a new Poetry environment :

make init

To make the Poetry-managed kernel available for a globally installed Jupyter :

poetry run ipython kernel install --user --name=<KERNEL_NAME>
jupyter notebook

On the Jupyter server, select the created kernel in “Kernel” -> “Change kernel”.

Dissecting Makefile

The Makefile provides several targets to assist in development and code quality :

  • init creates a project-specific virtual environment and installs the dependencies of the .lock file.
  • ci launches Black, Ruff, mypy and pytest on your source code.
  • pre-commit set up and run pre-commit hooks (see pre-commit documentation).
  • clean clears bytecode, poetry/pip caches. Use with caution.

Requirements

Author

Benjamin Roland

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

statsplotly-0.1.4.tar.gz (37.0 kB view hashes)

Uploaded Source

Built Distribution

statsplotly-0.1.4-py3-none-any.whl (42.6 kB view hashes)

Uploaded Python 3

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