Python 如何将图例添加到直方图?

Python 如何将图例添加到直方图?,python,pandas,dataframe,histogram,Python,Pandas,Dataframe,Histogram,我有一个按性别划分的收费率柱状图,存储在一个名为“费用”的数据框中 为了绘制相同的曲线,我使用了以下代码: axarr = fees.hist(column='fee_rate', by = 'gender') for ax in axarr.flatten(): ax.set_xlabel("fee_rate") ax.legend(gender) 我需要在情节上有一个图例,上面写着这个情节是男性还是女性的。然而,使用上面的代码,我在两个情节上都得到了“女性”。有

我有一个按性别划分的收费率柱状图,存储在一个名为“费用”的数据框中

为了绘制相同的曲线,我使用了以下代码:

axarr = fees.hist(column='fee_rate', by = 'gender')


for ax in axarr.flatten():
 ax.set_xlabel("fee_rate")
 ax.legend(gender)
我需要在情节上有一个图例,上面写着这个情节是男性还是女性的。然而,使用上面的代码,我在两个情节上都得到了“女性”。有人能指出错误吗?

  • 似乎标题已经表明左边的图表是女性的,右边是男性的。因此,一个选择是完全省略图例

  • 如果你坚持要在上面加一个图例,你可以试试
    ax.legend((ax.get_title(),)


这两个情节的合适图例不是性别,而是“小费率”,因为这就是被描绘的内容。性别已经显示为每个子批次的标题。您可以通过将图例设置为True来验证这一点。如果您选择这样做,您可以摆脱标记x_轴的循环。或者,您可以完全忽略图例,使用循环标记x_轴

tips.hist(column='tip_rate', by = 'sex',legend=True)
plt.suptitle('TIP RATES BY SEX')
plt.show()

能否显示部分或全部数据帧?理想情况下,转换是使用df.to_dict()方法将字典打印出来,并将其复制粘贴为代码,这样我们就可以使用它来回答您的问题。