如何使用mpatches.matplotlib中的补丁将自定义标签添加到条形图中

问题描述 投票:0回答:1

我正在尝试手动添加legends,但未显示。我想使用matplotlib pathes而不是seaborn色相,以便可以控制colours并处理重复的产品。

Dec = df.event_ID.value_counts().nlargest(10).keys().tolist()

text = [Typ[i] for i in Dec]

当我们打印文本输出时

print(text)

['JK)',
 'CDE',
 'GAMED',
 'JK',
 'DTA',
 'AU365',
 'BCD',
 'BCD',
 'ADD',
 'ADD']

这里是颜色和我的方法

color=["peru", "crimson", "magenta", "dimgrey", "forestgreen", "orange", 
       "dodgerblue", "aliceblue", "gold", "firebrick"]
df.groupby("event_ID")["Typ"].size().nlargest(10).plot(kind="bar", color=color)
plt.legend(color, text)

但是我在情节中看不到文字

python pandas matplotlib bar-chart legend
1个回答
0
投票

您可能想要:

df1=df.groupby("event_ID")["Typ"].size().nlargest(10)
plt.bar(df1.index,df1,  color=color,label=text) 
plt.legend(loc='upper right')

这将在右上角显示您的图例,但您当然可以自由更改它。您可以阅读文档plt legend了解更多详细用法。还要注意

df.groupby('keywords')['number'].size().plot(kind='bar',color=color,label=text)

不起作用,因为label仅采用字符串,而不采用列表。

© www.soinside.com 2019 - 2024. All rights reserved.