2013-02-08 38 views

回答

163

如果你已经拥有了数字对象使用:

f.set_figheight(15) 
f.set_figwidth(15) 

但是如果你使用.subplots()命令(如你正在展示的例子)来创建一个新的人物,你也可以使用:

f, axs = plt.subplots(2,2,figsize=(15,15)) 
+8

还有'fig.set_size_inches'设置高度和宽度在一起 –

+0

这不起作用,您可以将高度设置为任何您想要的,但它永远不会比您的显示器大。 –

+1

这不必对您的显示器进行任何操作。如果你输出到PNG呢?你是说它永远不会比屏幕分辨率更大?它是以英寸为单位的尺寸与决定像素大小的dpi的组合。 –

0

或者,创建一个使用figsize参数的图形()对象,然后使用add_subplot添加您的次要情节。例如。

import matplotlib.pyplot as plt 
import numpy as np 

f = plt.figure(figsize=(10,3)) 
ax = f.add_subplot(121) 
ax2 = f.add_subplot(122) 
x = np.linspace(0,4,1000) 
ax.plot(x, np.sin(x)) 
ax2.plot(x, np.cos(x), 'r:') 

Simple Example

这种方法的好处是,该语法是更靠近副区的()的调用,而不是副区()。例如。 subplots似乎并不支持使用GridSpec来控制子图的间距,但subplot()和add_subplot()都可以。