Python matplotlib图表区与绘图区

Python matplotlib图表区与绘图区,python,matplotlib,plot,Python,Matplotlib,Plot,在matplotlib中,如何控制绘图区域的大小与图表的总面积 我使用以下代码设置图表区域的大小: fig = plt.gcf() fig.set_size_inches(8.11, 5.24) 但是,我不知道如何设置绘图区域的大小,因此,当我输出图表时,x轴上的图例被切成两半。我想举个例子可以帮助您。地物大小figsize可以设置绘图将驻留的窗口大小。轴列表参数[左、下、宽、高]确定绘图在图中的位置以及覆盖的面积 因此,如果运行下面的代码,您将看到窗口的大小为8x6英寸。在该窗口内将有一个主

在matplotlib中,如何控制绘图区域的大小与图表的总面积

我使用以下代码设置图表区域的大小:

fig = plt.gcf()
fig.set_size_inches(8.11, 5.24)

但是,我不知道如何设置绘图区域的大小,因此,当我输出图表时,x轴上的图例被切成两半。

我想举个例子可以帮助您。地物大小
figsize
可以设置绘图将驻留的窗口大小。轴列表参数
[左、下、宽、高]
确定绘图在图中的位置以及覆盖的面积

因此,如果运行下面的代码,您将看到窗口的大小为8x6英寸。在该窗口内将有一个主绘图
big_ax
,占总面积的0.8x0.8。第二个图的大小为总面积的0.3x0.3

import matplotlib.pyplot as plt
import numpy as np

x1 = np.random.randint(-5, 5, 50)
x2 = np.random.randn(20)

fig = plt.figure(figsize=(8,6))  # sets the window to 8 x 6 inches

# left, bottom, width, height (range 0 to 1)
# so think of width and height as a percentage of your window size
big_ax = fig.add_axes([0.1, 0.1, 0.8, 0.8]) 
small_ax = fig.add_axes([0.52, 0.15, 0.3, 0.3]) # left, bottom, width, height (range 0 to 1)

big_ax.fill_between(np.arange(len(x1)), x1, color='green', alpha=0.3)
small_ax.stem(x2)

plt.setp(small_ax.get_yticklabels(), visible=False)
plt.setp(small_ax.get_xticklabels(), visible=False)
plt.show()

我找到了解决这个问题的另一种方法。有一个tight_layout()功能,可以自动调整子地块参数,使子地块适合图形。要使用此功能,需要添加以下代码行:“plt.tight_layout()”