时间序列图显示百分位数和其他人口统计数据

时间:2015-11-11 18:09:16

标签: python pandas matplotlib seaborn

考虑tsplotseaborn(时间序列图)的示例,例如如下所示。

pandas,matplotlib或seaborn是否包含类似的功能来绘制表示数据框中提供的人口的百分位数或标准差的半透明带?

阅读文档,看起来sns.tsplot通过自举来绘制估算器采样分布的置信区间,这当然是不同的。

enter image description here

2 个答案:

答案 0 :(得分:1)

值得一提的是,raphael的提案混淆了百分位数和置信区间,这是非常不同的统计数据。例如,如果您在ci=[0,100]中使用tsplot,则会获得显示数据最小值和最大值的频段。 2016年1月Seaborn github page提出了一个要求纳入百分位数的问题,并且明确而且简短地回复说这目前无法实现。

已发布潜在的解决方法here

答案 1 :(得分:-1)

seaborn tsplot documentation开始,您似乎可以提供多个百分位信心带。以下示例绘制了第68百分位数和第95百分位数置信区间(ci=[68, 95])。您还可以将该行的值更改为例如estimator=np.mediannp.mean的中位数。

import numpy as np; np.random.seed(22)
import seaborn as sns; sns.set(color_codes=True)
x = np.linspace(0, 15, 31)
data = np.sin(x) + np.random.rand(10, 31) + np.random.randn(10, 1)
ax = sns.tsplot(data=data, ci=[68, 95], color="m")