python plot多张图
时间: 2023-07-22 21:30:48 浏览: 278
如果你需要在 Python 中绘制多张图,可以使用 Matplotlib 库。Matplotlib 是 Python 中广受欢迎的绘图库,支持多种绘图类型,并且提供了丰富的 API。
下面是一个绘制多张图的例子:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成一些数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
# 绘制第一张图
plt.figure()
plt.plot(x, y1)
plt.title('sin(x)')
# 绘制第二张图
plt.figure()
plt.plot(x, y2)
plt.title('cos(x)')
# 绘制第三张图
plt.figure()
plt.plot(x, y3)
plt.title('tan(x)')
# 显示所有图形
plt.show()
```
在这个例子中,我们首先生成了一些数据,然后使用 `plt.figure()` 函数创建了多个图形窗口。接着使用 `plt.plot()` 函数在不同的图形窗口中绘制了不同的图形,并使用 `plt.title()` 函数为每个图形添加了标题。最后,使用 `plt.show()` 函数显示所有图形。
注意,在使用 `plt.figure()` 函数创建多个图形窗口时,需要在绘制每个图形之前调用一次 `plt.figure()` 函数。否则,所有的图形都会绘制在同一个窗口中。
另外,如果你需要在同一个窗口中绘制多个图形,你可以使用 `plt.subplot()` 函数创建多个子图。例如:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成一些数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
# 创建一个 2x2 的子图
fig, axs = plt.subplots(2, 2)
# 在子图中绘制图形
axs[0, 0].plot(x, y1)
axs[0, 0].set_title('sin(x)')
axs[0, 1].plot(x, y2)
axs[0, 1].set_title('cos(x)')
axs[1, 0].plot(x, y3)
axs[1, 0].set_title('tan(x)')
# 隐藏最后一个子图
axs[1, 1].axis('off')
# 调整子图之间的间距
plt.subplots_adjust(hspace=0.4, wspace=0.4)
# 显示图形
plt.show()
```
在这个例子中,我们使用 `plt.subplots()` 函数创建了一个 2x2 的子图,然后使用 `axs` 变量访问每个子图。接着,在每个子图中使用 `axs.plot()` 函数绘制图形,并使用 `axs.set_title()` 函数设置标题。最后,使用 `plt.subplots_adjust()` 函数调整子图之间的间距,并使用 `plt.show()` 函数显示图形。
注意,`axs` 变量是一个二维数组,用于访问每个子图。例如,`axs[0, 0]` 表示第一行第一列的子图,`axs[0, 1]` 表示第一行第二列的子图,以此类推。
阅读全文