当我使用pylab和Python Linux下绘制和显示图像,就像在下面的例子中的位置和大小:如何改变pylab创建的图像
img = pylab.imread(filename)
pylab.imshow(img)
pylab.show()
pylab.draw()
当我这样做,一个新的窗口弹出图像。
我的问题:我如何影响位置和大小?
当我使用pylab和Python Linux下绘制和显示图像,就像在下面的例子中的位置和大小:如何改变pylab创建的图像
img = pylab.imread(filename)
pylab.imshow(img)
pylab.show()
pylab.draw()
当我这样做,一个新的窗口弹出图像。
我的问题:我如何影响位置和大小?
pylab
的图像东西的全部点是,你得到一个np.array
的像素数据。
所以,你可以这样做:
img = pylab.imread(filename)
img = img * myTransformationMatrix
pylab.imshow(img)
如果马上告诉你,你需要知道,伟大的东西。如果您不明白矩阵乘法与旋转,平移和缩放图像有什么关系,pylab
可能不是您想要使用的图像库。只需使用PIL。
如果你想操作窗口,而不是图像,pylab
是真的不意味着这一点。
您可能想要使用TkInter
,这是Python内置的窗口库。它可能是丑陋,笨重和缓慢的,一些高级用途要么是不可能的,要么是你编写Tcl代码而不是Python ......但对于简单的东西,它不会是从pylab
下降的。事实上,这就是pylab
所使用的内容。
如果您开始达到TkInter
的限制,现在该查看外部窗口库。您可以使用完整的GUI框架,如Gtk +,Qt或wx。与三者的Python绑定没有那么不同;最重要的区别在于,在图形用户界面的工作方式略有不同的模型中,阅读它们并选择最适合您的模型。或者,你可以使用类似pygame
的东西,它可以非常简单地开窗(游戏需要的东西,而不是文字处理器)。
你的子集意味着旋转图像,但是你的文本暗示着窗口的位置......? –
标题固定。感谢您指出。 – Alex
我还是不明白这里的问题。你想选择一个窗口的大小和位置,并让它适当地缩放到这个尺寸?如果是这样,我真的认为'pylab'不适合你的环境;你想使用一个真正的GUI框架。 – abarnert