python画两条线的折线图,一条在上一条在下
时间: 2025-06-29 21:02:43 浏览: 11
### 使用 Matplotlib 绘制上下分布的双线折线图
为了实现上下分布的双线折线图,可以通过调整子图的位置来达到效果。下面提供了一种方法,在同一张图形窗口内创建两个独立的子图,并分别绘制不同的折线。
#### 创建数据集
首先定义两组数据作为横纵坐标的输入:
```python
import numpy as np
# 示例数据
x_values = np.linspace(0, 9, 10) # 横坐标值
y_values_1 = np.random.rand(10) * 10 # 第一组纵坐标随机数乘以系数扩大范围便于观察
y_values_2 = np.random.rand(10) * 5 + 5 # 第二组纵坐标同样处理但偏移一定数值保持区分度
```
#### 设置图形布局并绘制线条
接着配置图形大小以及各组件参数,最后调用 `plot()` 方法完成绘图操作:
```python
import matplotlib.pyplot as plt
fig, (ax_top, ax_bottom) = plt.subplots(nrows=2, ncols=1, figsize=(8, 6))
# 上部子图
ax_top.plot(x_values, y_values_1, color='blue', linestyle='-', marker='o')
ax_top.set_title('Top Line Plot')
ax_top.set_ylabel('Y Values Top')
# 下部子图
ax_bottom.plot(x_values, y_values_2, color='red', linestyle='--', marker='s')
ax_bottom.set_xlabel('X Axis Label')
ax_bottom.set_ylabel('Y Values Bottom')
ax_bottom.set_title('Bottom Line Plot')
plt.tight_layout()
plt.show()
```
上述代码片段展示了如何利用 `subplots` 函数一次性建立多个共享相同 X 轴或 Y 轴的子图实例[^1]。这里特别指定了 `nrows=2`, 表明希望构建垂直排列的一列共两张子图;而通过指定不同颜色(`color`)、样式(`linestyle`) 和标记符 (`marker`) 来区别两条曲线特征[^4]。
此外还设置了各自对应的标签和标题以便更好地理解所呈现的数据含义[^3]。最终借助于 `tight_layout()` 自动优化整体布局间距使得整个图表看起来更加美观整洁[^2]。
阅读全文
相关推荐











