(1)画布被规划为2*3的矩阵区域; (2)在编号为3的区域中绘制包含一条正弦曲线的子图; (3)在编号为6的区域中绘制包含一条余弦曲线的子图; (4)共享两个子图的x轴。代码
时间: 2024-12-10 08:36:51 浏览: 20
Qt 2D绘图基础.rar_8DM1_QT_QT 2D绘图_mousewu3_绘图
5星 · 资源好评率100%
在Python的matplotlib库中,我们可以使用`subplots`函数创建一个2行3列的画布,并通过索引来指定绘制子图的位置。下面是实现这个需求的一个示例代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建一个2*3的网格
fig, axs = plt.subplots(2, 3, figsize=(8, 6))
# 定义x坐标范围
x = np.linspace(0, 2 * np.pi, 500)
# 绘制正弦曲线在编号为3的区域(第二行第三列)
axs[1, 2].plot(x, np.sin(x), label='Sine Curve')
axs[1, 2].set_title('Sine Function')
# 绘制余弦曲线在编号为6的区域(下一行的最后一列)
axs[0, 2].plot(x, np.cos(x), label='Cosine Curve')
axs[0, 2].set_title('Cosine Function')
# 共享x轴
axs[1, 2].sharex(axs[0, 2])
# 设置标题和标签
plt.suptitle('2D Grid with Shared X-Axis')
for ax in axs.flat:
ax.legend()
ax.grid(True)
ax.set_xlabel('X-axis')
# 显示图形
plt.tight_layout() # 使得子图之间间距合适
plt.show()
阅读全文