如何在python pandas中绘制最小最大线图

Uma*_*raa 3 python plot matplotlib pandas

嗨,我有以下格式的数据框。

为简单起见,我展示了按年份分类的数据,但它有季度数据。我想做一个线图,最小最大值作为阴影,平均值作为线图。我尝试了不同的方法来做到这一点,但我无法在我需要的输出中得到它,如下所示。

作为替代方案,带有均值、最小值和最大值的箱线图也可以使用。

数据格式 在此处输入图片说明

需要的输出

在此处输入图片说明

Sco*_*ton 10

IIUC, groupby YEAR 并按最大值、最小值和平均值聚合您的值列,然后绘制平均值并使用 fill_between 在最大值和最小值内进行着色。

data = df.groupby('YEAR')['VALUE'].agg({'Low Value':'min','High Value':'max','Mean':'mean'})
data.reset_index(inplace=True)

ax  = data.plot(x='YEAR', y='Mean', c='white')
plt.fill_between(x='YEAR',y1='Low Value',y2='High Value', data=data)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明