#1 楼
如果您已经有了图形对象,请使用:f.set_figheight(15)
f.set_figwidth(15)
但是如果您使用.subplots()命令(如您所显示的示例)来创建一个新的该图也可以使用:
f, axs = plt.subplots(2,2,figsize=(15,15))
#2 楼
或者,使用figure()
参数创建一个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:')
此方法的优点是语法更接近
subplot()
的调用,而不是subplots()
的调用。例如。子图似乎不支持使用GridSpec
来控制子图的间距,但是subplot()
和add_subplot()
都可以。评论
有可能分别将“大小”添加到ax和ax2吗?
– M. Gopal
18年5月24日在9:29
如果我理解正确,您是否要设置两个轴的相对尺寸?在这种情况下,我认为您正在寻找以下问题:stackoverflow.com/questions/10388462/…
– aquirdturtle
18年5月26日在1:33
评论
还有fig.set_size_inches一起设置高度和宽度
– Francesco Montesano
13年2月8日在12:26
这是行不通的,您可以将高度设置为所需的任何高度,但是它永远不会比显示器大。
–user3417220
17年7月7日在16:29
这与您的显示器无关。如果输出为png怎么办?您是说它永远不能超过屏幕分辨率吗?它是以英寸为单位的大小与以像素为单位的dpi的组合。
–罗格·卡西斯
17年7月8日在16:07
在对subplots()的调用中包括figsize似乎不起作用。调用f.set_figheight确实可以。
– Vicki B
19-10-18在17:33
@BenButterworth,它属于** fig_kw部分,该部分传递给pyplot.figure。
–罗格·卡西斯
9月1日8:37