做一个matplotlib有四个子图的代码
时间: 2024-03-06 12:48:19 浏览: 68
python使用matplotlib:subplot绘制多个子图的示例
好的,下面是一个使用`plt.subplots()`函数创建四个子图的示例代码:
```
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 2 * np.pi, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
y4 = np.exp(x)
# 创建子图
fig, axs = plt.subplots(2, 2)
# 绘制子图1
axs[0, 0].plot(x, y1)
axs[0, 0].set_title('Subplot 1')
# 绘制子图2
axs[0, 1].plot(x, y2)
axs[0, 1].set_title('Subplot 2')
# 绘制子图3
axs[1, 0].plot(x, y3)
axs[1, 0].set_title('Subplot 3')
# 绘制子图4
axs[1, 1].plot(x, y4)
axs[1, 1].set_title('Subplot 4')
# 调整子图布局
plt.subplots_adjust(wspace=0.3, hspace=0.3)
# 显示图像
plt.show()
```
在上面的代码中,我们使用`np.linspace()`函数创建了一个包含100个数的数组`x`,用于在0到2π之间生成均匀分布的数据。然后,我们使用`np.sin()`、`np.cos()`、`np.tan()`和`np.exp()`函数分别创建了`y1`、`y2`、`y3`和`y4`数组,用于生成不同的曲线数据。
接下来,我们使用`plt.subplots()`函数创建一个2x2的子图布局,并将其存储在`fig`和`axs`变量中。然后,我们使用`axs`变量的索引来访问每个子图,并使用`plot()`函数绘制相应的曲线。最后,我们使用`set_title()`函数为每个子图添加标题,并使用`subplots_adjust()`函数调整子图之间的水平和垂直间距。
你可以根据需要修改代码中的数据和布局,以创建适合你需求的图像。
阅读全文