📅  最后修改于: 2023-12-03 14:46:34.945000             🧑  作者: Mango
在Python的Matplotlib库中,Figure
是最顶层的绘图对象,表示整个图像窗口,而add_subplot()
则是Figure
的方法之一,用于在图像窗口中创建一个或多个子图。
方法add_subplot()
的语法如下:
add_subplot(nrows, ncols, index, **kwargs)
其中,nrows
表示子图的行数,ncols
表示子图的列数,index
表示子图在窗口中的位置(从左到右、从上到下,从1开始编号),**kwargs
是可选参数。
add_subplot()
方法将返回AxesSubplot
对象,即在窗口中创建的子图对象。
下面是一个简单的示例,展示如何利用Figure.add_subplot()
在一个图像窗口中绘制多个子图:
import matplotlib.pyplot as plt
import numpy as np
# 创建一个图像窗口
fig = plt.figure()
# 在窗口中创建一个 2x2 的子图矩阵,选取第一个子图
ax1 = fig.add_subplot(2, 2, 1)
ax1.plot(np.arange(10))
# 选取第二个子图
ax2 = fig.add_subplot(2, 2, 2)
ax2.plot(np.arange(10) * 3)
# 选取第三个子图
ax3 = fig.add_subplot(2, 2, 3)
ax3.plot(np.arange(10) ** 2)
# 选取第四个子图
ax4 = fig.add_subplot(2, 2, 4)
ax4.plot(np.arange(10) / 2)
# 显示图像窗口
plt.show()
上述代码中,通过add_subplot()
方法在一个2x2的子图矩阵中依次选取4个子图,并在这4个子图中分别绘制了8条折线。这个图像窗口的效果如下图所示:
我们可以看到,利用Figure.add_subplot()
方法创建一个子图非常简单,只需要传入相应的行数、列数以及子图编号就可以了。此外,我们还可以利用add_subplot()
方法的可选参数projection
来指定子图类型,比如将子图定义为三维坐标系等等。