考虑以下数据框,这是jupyter笔记本上的样子:
in(1): df
out(1):
months 0 1 3 6 12
name
------------------------------------
janedoe 1.0 3.0 3.0 2.0 1.0
johndoe 3.0 2.0 3.0 1.0 1.0
tfbundy 1.0 3.0 3.0 3.0 3.0
someone 1.0 2.0 3.0 4.0 4.0
another 1.0 2.0 2.0 3.0 2.0
... ... ... ... ... ...
等700行。我想创建一个带有stdev误差条的条形图,其中y轴是每月列的平均分(1.0,3.0等),x轴是月(0,1,3,6,12) )。我该怎么做?
谢谢。
答案 0 :(得分:2)
最简单的方法是通过seaborn.barplot
,因为它会创建错误栏和其他好东西。
首先,融化DataFrame:
m = pd.melt(df).rename(columns={'variable': 'month'})
这将创建一个包含两列的DataFrame:month
和value
。现在绘制它:
import seaborn as sns
sns.barplot(x='month', y='value', data=m)
对于样本中的数据,它将如下所示: