python生成多个柱状图合成一个并显示数据
时间: 2024-05-01 12:21:36 浏览: 106
可以使用Matplotlib库来生成多个柱状图合成一个,并显示数据。以下是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 生成数据
x = np.arange(5)
y1 = np.random.randint(1, 10, size=5)
y2 = np.random.randint(1, 10, size=5)
y3 = np.random.randint(1, 10, size=5)
# 绘制柱状图
fig, ax = plt.subplots()
ax.bar(x, y1, label='y1')
ax.bar(x, y2, bottom=y1, label='y2')
ax.bar(x, y3, bottom=y1+y2, label='y3')
# 显示数据标签
for i, v in enumerate(y1):
ax.text(i, v/2, str(v), ha='center', va='center')
for i, v in enumerate(y2):
ax.text(i, v/2+y1[i], str(v), ha='center', va='center')
for i, v in enumerate(y3):
ax.text(i, v/2+y1[i]+y2[i], str(v), ha='center', va='center')
# 设置图例和标题
ax.legend()
ax.set_title('Multiple Bar Chart')
plt.show()
```
这段代码会生成三个随机数据的柱状图,将它们合成一个,并在每个柱子上显示数据标签。你可以根据需要修改数据和样式。
阅读全文