Python 更改matplot中不带缩放的范围
我有一个问题,我正在制作一个显示秘鲁缩放区域的程序,但显示的轴在图像范围内(例如7000x7500),但我希望在UTM范围内(例如,x轴在500000-600000和y轴9500000-9700000之间) 我试过使用Python 更改matplot中不带缩放的范围,python,matplotlib,range,axes,Python,Matplotlib,Range,Axes,我有一个问题,我正在制作一个显示秘鲁缩放区域的程序,但显示的轴在图像范围内(例如7000x7500),但我希望在UTM范围内(例如,x轴在500000-600000和y轴9500000-9700000之间) 我试过使用plt.set\u xlim和plt.sety\u lim但没有成功,我想我必须使用plt.autoscale(False),但它也不起作用,或者我用错了 我从主程序中创建图形和轴 f = plt.figure(figsize=(5,5)) axe = f.add_axes([0,
plt.set\u xlim
和plt.sety\u lim
但没有成功,我想我必须使用plt.autoscale(False)
,但它也不起作用,或者我用错了
我从主程序中创建图形和轴
f = plt.figure(figsize=(5,5))
axe = f.add_axes([0, 0, 1, 1])
这是我每次想要绘图时调用的函数
def plotear(self, mapa):
axe.clear()
axe.imshow(mapa, cmap='gray', interpolation='nearest')
axe.set_xlim(0,10000) #This is just for testing
axe.set_ylim(0,10000) #This is just for testing
plt.autoscale(False)
self.canvas.draw()
编辑:@ImportanceOfBeingErnest的回答如预期的那样有效!现在我遇到了另一个问题,在画布上我显示了图像,x轴和y轴没有正确显示,这是一个图像 我怎样才能修好它?谢谢。从中,您会发现有一个参数
范围
,可用于缩放图像
范围
:标量(左、右、下、上),可选,默认值:无以数据坐标表示的左下角和右上角的位置。如果没有,则定位图像,使像素中心位于基于零(行、列)的索引上 在这种情况下,你会像这样使用它
ax.imshow(mapa, extent=[5e5, 6e5, 9.5e6, 9.7e6])
对已编辑问题的回答:
如果图像太大,这可能是因为您设置了
axe=f.add_轴([0,0,1,1])
。您应该使用ax=fig.add_子图(111)
,如果边距不是您想要的,则设置plt.subplot_调整(…)
,并使用相应的间距