Shaded quantile plot
Project description
shadyquant😎
This python package allows you to quantile and plot lines where you have multiple samples, typically for visualizing uncertainty. Your data should be shaped (N, T)
, where N
is the number of
samples, T
is the dimension of your lines.
Install
pip install shadyquant
Example
Consider you have 100 lines that you want to compute confidence intervals (quantiles) on:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0,2,1000)
y = np.sin(x)
plt.plot(x,y)
w = np.random.normal(size=100)**2
traj = y + y * w[:, None]
plt.plot(traj.T, color='C0')
plt.show()
You can use shadyquant to plot a 95% confidence interval:
import sq
sq.traj_quantile(traj)
You can also do weighted quantiling if you have weights attached to each line
sq.traj_quantile(traj, weights=w)
You may want to do fancy shading, which just plots a series of quantiles as polygons with transparency. The quantils overlap, which gives a nice blending. The outer edges of the polygons still correspond to the 95% confidence interval
sq.traj_quantile(traj, fancy_shading=True)
Here are some further options you can modify:
plt.figure(figsize=(8, 3))
ax = plt.gca()
sq.traj_quantile(
traj,
ax=ax,
fancy_shading=True,
lower_q_bound=1 / 3,
upper_q_bound=2 / 3,
levels=100,
color="red",
alpha=0.01,
)
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 shadyquant-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46823ca4156a33dcd1706c7e1e0a19ccefb484fa764f3f175532d6fa185961f6 |
|
MD5 | 1f0793300ff196b9239b16998621fe20 |
|
BLAKE2b-256 | 02f145e282cb7dd66384801ddc553cbcfacc5c62912d9a68e77491ae228620e6 |