【问题标题】:How to resize images in pylab如何在pylab中调整图像大小
【发布时间】:2012-05-23 11:54:22
【问题描述】:

每当我生成图像时,使用 pylab 手动缩放它非常容易,即在我们打算放大的区域周围绘制一个矩形。我想知道是否可以对这个操作进行编码。

这是一个示例代码,我在其中生成了一个 100x100 的图像,每行都有随机值:

from random import *
from pylab import *
from numpy import *


a=ones((100,100))
image=array([dummy*random() for dummy in a])

imshow(image,extent=[0,1]+[5,6])

在上面的示例中,我们的图像在 x 轴上从 0 延伸到 1,在 y 轴上从 5 延伸到 6。如何在图像上显示缩放,比如说在 0.5 区域

【问题讨论】:

  • 当你不想复制很多不相关的代码时,这很有意义并且很好,你应该创建一个简短的虚拟图像生成器。这个想法是有人应该能够复制您发布的内容并使用它,因此他们可以立即尝试解决问题,而不是浪费时间编写自己的占位符。 (这是 SSCCE 的“独立”部分:参见 sscce.org。)

标签: python matplotlib


【解决方案1】:

您可以使用scipy.ndimage.interpolation.zoom() 调整数组大小。

编辑:

对不起,我误解了你的问题。您可以使用xlim()ylim()来设置X和Y轴的范围:

import numpy as np
import pylab as pl

y, x = np.ogrid[-1:1:100j, -1:1:100j]
z = np.sin(4*(x**2+y**2))

pl.imshow(z, origin="lower", extent=(-1,1,-1,1))
pl.xlim(-0.5, 0)
pl.ylim(0.5, 1.0)
pl.show()

【讨论】:

  • 谢谢,这比我想象的要容易。
猜你喜欢
  • 1970-01-01
  • 2014-05-24
  • 2020-10-02
  • 1970-01-01
  • 1970-01-01
  • 2015-09-27
  • 2011-05-16
  • 2017-07-22
相关资源
最近更新 更多