python matplotlib置信区间框

时间:2017-08-14 09:23:35

标签: python pandas matplotlib seaborn confidence-interval

有人可以指导我制作一张像这张图片中的蟒蛇图:confidence boxes

我根据一个具有18个不同值的参数来测量过程的运行时间。我做了100次测量每个值的运行时间。 现在我需要99%(或95%)置信区间作为参数每个值的平均值左右的框。

我考虑过将seaborn.tsplot()与interpolate = False一起使用,然后调整matplot输出以生成confidence boxes like that

这是pandas dataFrame看起来像

的最小python示例
import pandas as pd
import numpy as np
import seaborn as sns
import scipy.stats as st

RUNS=100

X = list(range(20,210,10))

data = pd.DataFrame()
for x in X:
    fakeData = np.array([x*10]*RUNS)
    randomVariation = np.random.random(RUNS)*x
    y = np.add(fakeData, randomVariation)
    data[x] = y

#calculate mean and confidence intervals
for x in X:
    y = np.array(data[x])
    mean = np.mean(y)
    ci = st.t.interval(0.99, len(y)-1, loc=mean, scale=st.sem(y))
    print((mean,)+ ci)
编辑:忘了提及:我已经可以计算平均值和置信区间。我只需要一些指导来完成图形部分。

0 个答案:

没有答案