堆积条形图Matplot库

时间:2018-09-21 15:47:36

标签: python pandas matplotlib charts

我在熊猫数据框中有一个数据集:

dfc

    a   b   c   d
0   5.1 3.5 1.4 -0.4
1   4.9 3   1.4 -0.4
2   4.7 3.2 1.3 -0.4
3   4.6 3.1 1.5 -0.4
4   5   3.6 1.4 -0.4
5   5.4 3.9 1.7 -0.8
6   4.6 3.4 1.4 -0.6
7   5   3.4 1.5 0.4
8   4.4 2.9 1.4 0.4
9   4.9 3.1 1.5 0.2

我一直在尝试构建如下图所示的堆积条形图。更为复杂的是,此图表上的列数可能不同(例如,可能有列“ e”和“ f”)。

我一直在尝试建立一个循环以遍历各列并将其应用于图表。

还没有运气。

cumval=0
fig = plt.figure(figsize=(15,6))
for col in dfc.columns[~dfc.columns.isin(['Model',yname])]:
    plt.bar(dfc.index.values, dfc[col], bottom=cumval, label=col)
    cumval = (cumval+dfc[col])

plt.plot(dfc['Model'],'b-o',label='Model')
plt.plot(dfc[yname],'r-o',label='Acutal')    

_ = plt.xticks(rotation=30)
_ = plt.legend(fontsize=8)

有人有什么想法吗?

enter image description here

0 个答案:

没有答案
相关问题