首页 > 解决方案 > 从熊猫条形图中的图例中删除列名

问题描述

我有一个如下的数据框

        batsman      non_striker  partnershipRuns
0      SK Raina       A Flintoff               23
1      SK Raina         DR Smith               90
2      SK Raina     F du Plessis               36
3      SK Raina        JA Morkel               14
10     MS Dhoni    CK Kapugedera               18
11     MS Dhoni         DJ Bravo               51
12     MS Dhoni     F du Plessis               27
13     MS Dhoni        JA Morkel               12
14     MS Dhoni         JDP Oram                6

我已经能够使用创建堆积条形图

df1=df.groupby(['batsman','non_striker']).sum().unstack().fillna(0)
df1.plot(kind='bar',stacked=True,legend=True)
plt.legend(loc='center left', bbox_to_anchor=(1.0, 0.5))

这导致列名作为元组包含在图例中,如图所示。在此处输入图像描述

我怎么能没有列名而只有图例的值?

请帮忙

标签: pandasbar-chart

解决方案


为了防止MultiIndex在列中为 sum after 指定列groupbyfillna这里也没有必要,将参数添加fill_value=0unstack

df1=df.groupby(['batsman','non_striker'])['partnershipRuns'].sum().unstack(fill_value=0)

另一个解决方案pivot_table

df1=df.pivot_table(index='batsman',
                   columns='non_striker',
                   values='partnershipRuns',
                   aggfunc='sum',
                   fill_value=0)

推荐阅读