Python折线图和柱状图怎么绘制在一个坐标系里
时间: 2024-02-22 15:59:01 浏览: 68
要在同一个坐标系中绘制折线图和柱状图,可以使用Matplotlib库中的子图(subplot)函数,具体步骤如下:
1. 导入Matplotlib库: `import matplotlib.pyplot as plt`
2. 创建一个包含两个子图的画布:`fig, ax = plt.subplots(2, 1, sharex=True)`
其中,参数`2`表示子图的行数,`1`表示列数,`sharex=True`表示共享x轴。
3. 在第一个子图上绘制柱状图:`ax[0].bar(x, y)`
其中,`x`和`y`分别表示柱状图的x轴和y轴数据。
4. 在第二个子图上绘制折线图:`ax[1].plot(x, y)`
其中,`x`和`y`分别表示折线图的x轴和y轴数据。
5. 设置坐标轴标签和图标题等:`ax[0].set_ylabel('y1 label')`、`ax[1].set_ylabel('y2 label')`、`plt.xlabel('x label')`、`plt.title('title')`
6. 显示图形:`plt.show()`
完整代码示例:
```python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [10, 8, 6, 4, 2]
y2 = [1, 3, 5, 7, 9]
fig, ax = plt.subplots(2, 1, sharex=True)
ax[0].bar(x, y1)
ax[1].plot(x, y2)
ax[0].set_ylabel('y1 label')
ax[1].set_ylabel('y2 label')
plt.xlabel('x label')
plt.title('title')
plt.show()
```
阅读全文