拉伸轴刻度以适合压缩图像

时间:2012-12-12 13:56:35

标签: matplotlib axis stretching

我有一个PyQt4应用程序,其中我使用matplotlib表示16位灰度图像。我所代表的图像非常大。由于内存限制,我很遗憾无法代表更大的图像,所以我正在以这种方式切片:

ImageDataArray[::ratio, ::ratio]

显示图表时,轴会根据比率进行压缩。因此,图像的坐标对于知道感兴趣的信息被放置的位置非常重要,我想再次按比例因子拉伸轴。

如何管理,即使我使用matplotlib工具栏中的缩放功能,也会显示正确的坐标?

提前致谢。

代码:

from numpy import fromfile, uint16, shape
import matplotlib.pyplot as plt

data = fromfile('D:\\ImageData.raw', dtype=uint16)
data.resize((ysize,xsize))
xmin = 0
ymin = 0
xmax = shape(data)[1]
ymax = shape(data)[0]
ratio = max(max(shape(data)[0], shape(data)[1])/2000, 1)
data_slice = data[ymin:ymax:ratio, xmin:xmax:ratio]
fig = plt.figure(1)
ax = fig.add_subplot(111)
ax.imshow(data_slice, cmap='gray', interpolation='nearest')
plt.show()

1 个答案:

答案 0 :(得分:1)

您想使用imshow (doc)

的范围关键字参数
ax.imshow(...,extent=[xmin,xmax,ymin,ymax])