首页 > 解决方案 > 在 matplotlib 图中添加图像会创建仅显示轴的空白输出

问题描述

我一直在尝试将图像添加到我的 matplotlib 图中。图片是我情节的传奇。我的原始图表中有太多的情节,所以我试图概括图例以使其易于观察。

虽然我可以将图像导出到 matplotlib,但我注意到附加的脚本在一个窗口中将数据与图例(图像)一起绘制,并且还会打开另一个仅显示轴的空白图。

我究竟做错了什么?随意添加您选择的任何图像进行测试。

`

import matplotlib.pyplot as plt
import numpy as np
import csv
import matplotlib.image as image

axes = plt.gca()

im = image.imread('plot/minPlot/legend.png')
fig, ax = plt.subplots()
ax.imshow(im,aspect='auto', extent=(3,5,2,3), zorder=-1)

plt.xlabel('X Axis')
plt.ylabel('Y Axis')
plt.title('')

x1, y1 = [-1,12],[1,4]
x2, y2 = [1,10],[3,2]
plt.plot(x1,y1,x2,y2,marker='o')

plt.show()

`

标签: imagematplotlib

解决方案


正如@DavidG 发布的那样,“axes = plt.gca()”导致了一个额外的空图。我使用 plt.gca() 设置 x,y 轴的限制。通过https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.ylim.html后,我可以直接从 plt 类中调用 xlim 和 ylim 函数。所以,我可以摆脱 plt.gca() 调用。


推荐阅读