如何在Python Pandas中为分组柱状图添加误差条?

1 投票
1 回答
1408 浏览
提问于 2025-04-18 10:33

我知道这里有一个非常相关的问题。不过,那里的解决方案适用于那个例子,但我这边还是出现了错误。

这是我相对简单的代码:

我想在我的分组柱状图上添加误差条。

df = pd.DataFrame([[ 1306,  5148,  1729,  1377,  1051,   179,  7250],
       [ 2202,  8445,  2749,  1573,  1898,   292, 11466],
       [   46,   281,    71,    53,    35,     4,   293],
       [  445,  1701,   553,   470,   355,    53,  3088],
       [  145,   583,   190,   100,   138,    16,  1505],
       [  164,   476,   164,    72,   188,    12,  1311],
       [  174,   842,   254,   129,   177,    34,  2599]])
df.columns = ['A', 'B', 'C', 'D', 'E', 'F', 'G']
df.index = ['a', 'b', 'c', 'd', 'e', 'f', 'g']

yerr = array([[ 0.00192938,  0.001575  ,  0.00840369,  0.00305756,  0.00437465,
         0.00517742,  0.00306851],
       [ 0.00336221,  0.00269552,  0.01714203,  0.00534033,  0.00797719,
         0.00817815,  0.00616608],
       [ 0.00219171,  0.00174148,  0.01026187,  0.00337873,  0.00496298,
         0.00517742,  0.00367047],
       [ 0.00197692,  0.00134693,  0.00897753,  0.00313595,  0.00366509,
         0.00350077,  0.00265679],
       [ 0.00174394,  0.00147064,  0.00738486,  0.00275061,  0.00427364,
         0.00551332,  0.0030937 ],
       [ 0.00073795,  0.00059391,  0.00254775,  0.00108794,  0.00148974,
         0.00144758,  0.00137975],
       [ 0.00365027,  0.00289623,  0.01729375,  0.00610798,  0.00958869,
         0.01018425,  0.00749114]])

df.plot(kind='bar', yerr=yerr)

结果出现了一个

ValueError: too many values to unpack

你们知道为什么吗?我以为yerr的形状应该和数据框(df)一样(它确实是)。

1 个回答

0

显然,Pandas 0.13版本有个问题。这个问题在0.14版本中解决了。感谢@chrisb确认并处理了这个问题。

撰写回答