使用Matplotlib进行多图排列

时间:2009-11-05 00:15:39

标签: python matplotlib

我们可以控制Matplotlib在屏幕上放置数字的位置吗?

我想生成四个不重叠的数字(在四个不同的窗口中)。

4 个答案:

答案 0 :(得分:8)

IPython您可以执行以下操作:

figure()
get_current_fig_manager().window.wm_geometry("400x600+20+40")

或等效于Python脚本:

import pylab as pl
pl.figure()
pl.get_current_fig_manager().window.wm_geometry("400x600+20+40")
pl.show()

请注意,这假设您使用的是TkAgg后端。

答案 1 :(得分:3)

也可以使用带有Qt后端的IPython接口来实现类似的结果:

import matplotlib
import pylab as pl
f1 = pl.figure()
f_manager = pl.get_current_fig_manager()
f_manager.window.move(600, 600)
pl.show()

使用f_manager,你基本上有一个PyQt4对象,允许你根据需要修改窗口属性。

答案 2 :(得分:0)

不单独使用show()和Matplotlib。最简单的解决方案可能是使用savefig(..)并使用您喜欢的操作系统图像查看器。如果您需要与图表交互,Matplotlib提供backends

答案 3 :(得分:0)

我知道这样做的最简单方法是在首选GUI应用程序中创建图形窗口,然后将matplotlib图形放入此窗口。有很多关于如何使用不同的GUI框架here进行嵌入的示例。

代码示例看起来有点复杂,但它主要是样板文件,您只需要修改几行。