Python 如何将自定义字符串添加到熊猫计数图的图例中?

Python 如何将自定义字符串添加到熊猫计数图的图例中?,python,pandas,matplotlib,Python,Pandas,Matplotlib,我有一个dataframe列,在该列上应用value_counts来查找每个实体的发生次数 我试着把它画成条形图。 它在x轴上绘制每个实体,在y轴上绘制它们的计数。如何添加图例以便x轴上的每个实体都映射到字符串 值_计数的结果如下所示: df.Column.value_counts() 10.0 1094 2154.0 697 23.0 202 我需要一个用字符串替换实体的图例 10-α 2154-贝塔 23-伽马射线 实体的数量可能有所不同。我有每个实体的字符

我有一个dataframe列,在该列上应用value_counts来查找每个实体的发生次数

我试着把它画成条形图。 它在x轴上绘制每个实体,在y轴上绘制它们的计数。如何添加图例以便x轴上的每个实体都映射到字符串

值_计数的结果如下所示:

df.Column.value_counts()

10.0      1094
2154.0     697
23.0       202
我需要一个用字符串替换实体的图例

10-α 2154-贝塔 23-伽马射线 实体的数量可能有所不同。我有每个实体的字符串列表。因此,我希望用列表中的字符串替换实体。我只想在图例上替换它


图形应在x轴上具有实体,图例应具有列表中的等效字符串。

不太容易,因为默认情况下没有图例:

import matplotlib.patches as mpatches
import matplotlib.pyplot as plt

s = df.Column.value_counts()
#sample data
#s = pd.Series([1094,697,202], index=[10.0,2154.0,23.0])

s.plot.bar()
a = mpatches.Patch(color='blue', label='Alpha')
b = mpatches.Patch(color='orange', label='Beta')
c = mpatches.Patch(color='green', label='Gamma')

plt.legend(handles=[a,b,c], loc='best')

plt.show()
如果wnt也更改x轴的值,则添加重命名:

或者可能必须使用.withColumn之类的

import matplotlib.patches as mpatches
import matplotlib.pyplot as plt

s = df.Column.value_counts()
d = {10:'Alpha', 2154: 'Beta', 23: 'Gamma'}
#sample data 
#s = pd.Series([1094,697,202], index=[10.0,2154.0,23.0])

s.rename(d).plot.bar()

a = mpatches.Patch(color='blue', label='Alpha')
b = mpatches.Patch(color='orange', label='Beta')
c = mpatches.Patch(color='green', label='Gamma')

plt.legend(handles=[a,b,c], loc='best')

plt.show()
equiv = {10:"Alpha", 2154:"Beta", 23:"Gamma"}
df = df.map(equiv)