subplots的使用方法
时间: 2024-01-30 21:15:48 浏览: 66
`subplots` 是 `matplotlib` 库中用于创建多个子图的函数,它可以一次性创建多个子图,并返回一个包含所有子图的 `Figure` 对象和一个包含所有子图的 `Axes` 对象数组。它的基本用法如下:
```python
import matplotlib.pyplot as plt
# 创建一个包含 2x2 个子图的 Figure 对象和 Axes 对象数组
fig, axs = plt.subplots(nrows=2, ncols=2)
# 在第一个子图中绘制一个折线图
axs[0, 0].plot([1, 2, 3, 4], [1, 4, 9, 16])
# 在第二个子图中绘制一个条形图
axs[0, 1].bar(['A', 'B', 'C', 'D'], [10, 5, 20, 15])
# 在第三个子图中绘制一个散点图
axs[1, 0].scatter([1, 2, 3, 4], [1, 4, 9, 16])
# 在第四个子图中绘制一个饼图
axs[1, 1].pie([10, 5, 20, 15], labels=['A', 'B', 'C', 'D'])
# 显示图形
plt.show()
```
在这个例子中,我们使用 `subplots` 函数创建了一个包含 2x2 个子图的 `Figure` 对象和 `Axes` 对象数组,然后在每个子图中绘制了一个不同类型的图形。
`subplots` 函数的两个参数分别表示子图的行数和列数。它还可以接收其他一些可选参数,例如 `figsize`(指定 `Figure` 对象的大小)、`sharex` 和 `sharey`(指定是否共享坐标轴)等。
在使用 `subplots` 函数创建的 `Axes` 对象数组中,子图的索引方式与 `subplot` 函数相同,都是按照行优先的方式进行编号。例如,在上面的例子中,第一个子图的索引为 `(0, 0)`,第二个子图的索引为 `(0, 1)`,以此类推。
阅读全文