Python Matplotlib条形图图例仅显示一项

Python Matplotlib条形图图例仅显示一项,python,matplotlib,Python,Matplotlib,为条形图绘图创建图例时,仅将列表的第一个元素添加到图例中 我曾尝试通过分组数据框打印图例,条形图是一个出现的柱状图 df = pd.DataFrame({'mod': biomarkers}) counts =df.groupby('mod', as_index=False) counts.size().plot(kind='bar',width=1.0) names = np.array(counts.describe())[:,2] counts = np.array(counts.des

为条形图绘图创建图例时,仅将列表的第一个元素添加到图例中

我曾尝试通过分组数据框打印图例,条形图是一个出现的柱状图

df = pd.DataFrame({'mod': biomarkers})
counts =df.groupby('mod', as_index=False)
counts.size().plot(kind='bar',width=1.0)

names = np.array(counts.describe())[:,2]
counts = np.array(counts.describe())[:,3]
plt.legend(list(names))
plt.show()

显示来自pd.DataFrame的数据:

  • 图例=列名
  • x_tics=索引
您可以将计数序列转换为数据帧和转置

fig,ax=plt.subplot()
df=pd.DataFrame({'mod':['a','b','c','a','a','c']})
计数=df.groupby('mod',as_index=False)
counts\u df=counts.size()到\u frame().T
计数图(种类=、宽度=1.0、ax=ax)
#不带plt.legend()

请参见和。

事实上,一个带有n个条形的条形图给出一个图例条目。如果想要n个图例条目,则需要自己绘制或绘制n个条形图。