Python Matplotlib:添加具有平均留置权精确值的图例

weixin_38049216 2019-09-12 01:32:28
我使用matplotlib库绘制了一个图,它描绘了两个直方图和平均线.我认为如果添加传说,情节会更清晰.我想创建一个图例,说明这两条平均线的确切值.下面我附上我的代码和我生成的图表以及显示我想要实现的图片(这是我使用powerpoint添加图例的图片): def setPlot(data, mycolor, myalpha, mylinestyle): plt.style.use('ggplot') plt.rc('xtick',labelsize=12) plt.rc('ytick',labelsize=12) plt.xlabel("Incomes") plt.hist(data, bins=50, color= mycolor, alpha=myalpha) plt.axvline(numpy.mean(data), color=mycolor, linestyle=mylinestyle, linewidth=1.5) plt.show() 我将不胜感激任何建议. – – – – – -解 – – – – 感谢来自wwii和tom的伟大建议,我能够实现我的想法的解决方案.我试图连接这两个建议,这就是我获得的: def setPlot(data, mycolor, myalpha, mylinestyle): plt.style.use('ggplot') plt.rc('xtick',labelsize=12) plt.rc('ytick',labelsize=12) plt.xlabel("Incomes") plt.hist(data, bins=50, color= mycolor, alpha=myalpha) plt.axvline(numpy.mean(data), color=mycolor, linestyle=mylinestyle, linewidth=1.5, label=str(numpy.mean(data))) plt.legend(loc='upper right') plt.show() 以及我生成的情节的例子: 非常感谢你的帮助!
...全文
38 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38057020 2019-09-12
  • 打赏
  • 举报
回复
您只需要给axvline一个标签,然后在绘制两个直方图后调用plt.legend.像这样: import matplotlib.pyplot as plt import numpy def setPlot(data, mycolor, myalpha, mylinestyle): plt.style.use('ggplot') plt.rc('xtick',labelsize=12) plt.rc('ytick',labelsize=12) plt.xlabel("Incomes") plt.hist(data, bins=50, color= mycolor, alpha=myalpha) plt.axvline(numpy.mean(data), color=mycolor, linestyle=mylinestyle, linewidth=1.5,label='{:5.0f}'.format(numpy.mean(data))) setPlot(numpy.random.rand(100)*30000.,'r',0.5,'--') setPlot(numpy.random.rand(100)*20000.,'b',0.5,'-') plt.legend(loc=0) plt.savefig('myfig.png')

476

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧