Plotting ridgeplots with matplotlib
Project description
ridgeplot-py
This is a simple module for plotting ridgeplot with the scipy ecosystem.
Ridgeplot is a great data visualization technique to compare distributions from multiple groups at the same time, and was first introduced in 2017 as joy plot:
I hereby propose that we call these "joy plots" #rstats https://t.co/uuLGpQLAwY
— Jenny Bryan (@JennyBryan) April 25, 2017
ridgeplot-py provides a simple API to produce matplotlib-compatible ridgeplots, as well as a handy ColorEncoder class with scikit-learn syntax for manipulating color annotations in a consistent way [through out manuscripts or presentations].
Install
git clone git@github.com:wckdouglas/ridgeplot-py.git
cd ridgeplot-py
python setup.py install
or via conda:
conda install -c conda-forge ridgeplot-py
or via pypi:
pip install ridgeplot-py
Usage
from ridgeplot import ridgeplot
from ridgeplot.colors import ColorEncoder, ColorPalette
import numpy as np
import matplotlib.pyplot as plt
# mocking some data
# the input data should be a dict of
# - keys: group names for the distributions
# - values: list of values
data = {}
for i in range(8):
data['data_{}'.format(i)] = np.random.randn(100) * (i+1)
# make the plot
fig = plt.figure()
ax = fig.add_subplot(111)
ridgeplot(
ax,
data,
xlim=(-20,20),
label_size=15
)
Example
A notebook showing quick howto is included in this repo!
Build on Apple silicon
scipy may cause error and may be able to solved by the this stackoverflow answer:
brew install openblas
export OPENBLAS="$(brew --prefix openblas)"
poetry install
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ridgeplot_py-0.2.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8011b570b714005259dbaacd80c1a0a874408f0340486397a159933f8dcdeea |
|
MD5 | 2d0ccb155ff40902cf4843a72a6c020e |
|
BLAKE2b-256 | 9d24f86dee31df2753cc5c480c1c6e8395fa6e57d4aebb10ce1224a28554ed59 |