python画柱状图堆叠
时间: 2023-11-06 11:53:34 浏览: 176
使用Python画柱状图
5星 · 资源好评率100%
在 Python 中,可以使用 Matplotlib 库绘制柱状图。要绘制堆叠柱状图,可以在绘制每个组的柱子时,将前面的柱子高度累加到后面的柱子上。
下面是一个简单的示例代码,演示如何绘制堆叠柱状图:
``` python
import numpy as np
import matplotlib.pyplot as plt
# 定义数据
N = 5
men_means = (20, 35, 30, 35, 27)
women_means = (25, 32, 34, 20, 25)
men_std = (2, 3, 4, 1, 2)
women_std = (3, 5, 2, 3, 3)
# 绘制柱状图
ind = np.arange(N)
width = 0.35
p1 = plt.bar(ind, men_means, width, yerr=men_std)
p2 = plt.bar(ind, women_means, width, bottom=men_means, yerr=women_std)
plt.ylabel('Scores')
plt.title('Scores by group and gender')
plt.xticks(ind, ('G1', 'G2', 'G3', 'G4', 'G5'))
plt.yticks(np.arange(0, 81, 10))
plt.legend((p1[0], p2[0]), ('Men', 'Women'))
plt.show()
```
这个例子中,有两组数据(men_means 和 women_means),每组数据有五个元素,分别对应五个组(G1、G2、G3、G4、G5)的得分。使用 Matplotlib 库的 bar 函数绘制柱状图,将第一组柱子(men_means)绘制在 x 轴上,第二组柱子(women_means)绘制在第一组柱子的顶部(bottom=men_means),从而实现堆叠的效果。
上面的代码执行后,会生成一个堆叠柱状图,如下图所示:
![堆叠柱状图](https://img-blog.csdn.net/20180426172732980)
可以根据需要修改代码,绘制不同的堆叠柱状图。
阅读全文