用subplot命令画 2 个子图,分别为y=3sinx和y=2cosx。前者用黑色实线绘制,后者用红色虚线绘制。设置横坐标和纵坐标名称,在合适位置添加图例(y=3sinx;y=2cosx)。
时间: 2024-12-12 16:25:45 浏览: 10
level.zip_matlab画 2D 3D图_subplot
在Matplotlib库中,你可以使用`subplots()`函数创建一个新的网格,然后分别在每个子图上绘制给定的函数。下面是一个示例代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建一个2行1列的子图网格
fig, axs = plt.subplots(2, 1, figsize=(6, 8))
# 设置x轴范围和步长
x = np.linspace(0, 2 * np.pi, 400)
# 绘制第一个子图 y=3sin(x) - 黑色实线
axs[0].plot(x, 3 * np.sin(x), color='black', linestyle='-')
axs[0].set_title('y=3sin(x)')
axs[0].set_xlabel('X')
axs[0].set_ylabel('Y')
# 绘制第二个子图 y=2cos(x) - 红色虚线
axs[1].plot(x, 2 * np.cos(x), color='red', linestyle='--')
axs[1].set_title('y=2cos(x)')
axs[1].set_xlabel('X')
axs[1].set_ylabel('Y')
# 添加图例
axs[1].legend(['y=3sin(x)', 'y=2cos(x)'], loc='upper right')
# 调整子图间距
plt.tight_layout()
# 显示图像
plt.show()
```
在这个例子中,我们首先创建了一个包含两个子图的窗口,然后对每个子图分别绘制了指定的函数,并设置了标题、坐标轴标签以及图例的位置。最后,通过调整布局来优化整个图像的显示效果。
阅读全文