【发布时间】:2020-11-04 11:52:15
【问题描述】:
我在 matplotlib 中有一个图表,我想在上面叠加图像。目前我正在使用 OffsetImage 这样做:
team_logo = (os.getcwd() + "\Team_Logos"'\\' + data['posteam'].iloc[0] + '.png')
team_logo = plt.imread(team_logo)
team_logo = OffsetImage(team_logo, zoom=0.50)
team_logo.set_offset((2800, 2800))
ax.add_artist(team_logo)
但我想让图像居中而不是 team_logo.set_offset((2800, 2800)) 行。我有不同大小的图像,我想在不同的时间使用,因此为我创建的每个图形手动将((2800,2800) 更改为不同的坐标并不是一个好的解决方案。我还在使用plt.savefig() 和dpi=400 作为我的最终图像。
实际的图形本身始终是 120 x 53.3 的图形(x x y),但由于某种原因,OffsetImage 的叠加图像在 plt.show() 中的显示方式与在 plt.savefig() 中的显示方式不同,所以我可以不要只使用((60,26.65))。
有谁知道我是否有办法让我的图像在我保存到图像的情节上居中?如果有更好的方法,我不必使用 OffsetBox。谢谢!
【问题讨论】:
标签: python matplotlib graph data-visualization offset