📅  最后修改于: 2023-12-03 15:07:44.220000             🧑  作者: Mango
在数据可视化中,堆叠条形图是一种非常常见的可视化图表类型,它可以将多组数据分别绘制在一个条形图上,而且相对比较直观。
这里,我们将介绍在 Matplotlib 中如何创建堆叠条形图。
为了演示如何创建堆叠条形图,我们需要准备一组示例数据,这里我们使用 Matplotlib 自带的示例数据集 people
:
import matplotlib.pyplot as plt
import numpy as np
# 示例数据
names = ['G1', 'G2', 'G3', 'G4', 'G5']
values = [20, 34, 30, 35, 27]
values2 = [25, 32, 34, 20, 25]
values3 = [25, 25, 23, 25, 28]
我们可以使用 plt.bar()
方法来创建条形图,而要创建堆叠条形图,就需要将多组数据分别绘制在同一个条形图上。
下面的代码演示了如何创建基础的堆叠条形图,并设置颜色、标签等属性:
# 创建基础的堆叠条形图
p1 = plt.bar(names, values)
p2 = plt.bar(names, values2, bottom=values)
p3 = plt.bar(names, values3, bottom=np.array(values)+np.array(values2))
# 设置标签和颜色
plt.ylabel('Scores')
plt.xlabel('Groups')
plt.title('Scores by group and test')
plt.legend((p1[0], p2[0], p3[0]), ('Group 1', 'Group 2', 'Group 3'))
plt.show()
上面的代码中,我们使用了 bottom
参数来设置每组数据的起始位置,从而实现堆叠效果。同时,我们也设置了标签和标题,对图表进行了简单的美化。
通过上面的示例代码,我们可以看到 Matplotlib 提供了非常方便的工具来创建堆叠条形图。在实际应用中,我们只需要根据具体的数据和需求进行调整,就可以创建出更加适合自己需要的堆叠条形图了。
代码片段如下,已按Markdown格式标明:
# 在 Matplotlib 中创建堆叠条形图
在数据可视化中,堆叠条形图是一种非常常见的可视化图表类型,它可以将多组数据分别绘制在一个条形图上,而且相对比较直观。
这里,我们将介绍在 Matplotlib 中如何创建堆叠条形图。
## 准备数据
为了演示如何创建堆叠条形图,我们需要准备一组示例数据,这里我们使用 Matplotlib 自带的示例数据集 `people`:
```python
import matplotlib.pyplot as plt
import numpy as np
# 示例数据
names = ['G1', 'G2', 'G3', 'G4', 'G5']
values = [20, 34, 30, 35, 27]
values2 = [25, 32, 34, 20, 25]
values3 = [25, 25, 23, 25, 28]
我们可以使用 plt.bar()
方法来创建条形图,而要创建堆叠条形图,就需要将多组数据分别绘制在同一个条形图上。
下面的代码演示了如何创建基础的堆叠条形图,并设置颜色、标签等属性:
# 创建基础的堆叠条形图
p1 = plt.bar(names, values)
p2 = plt.bar(names, values2, bottom=values)
p3 = plt.bar(names, values3, bottom=np.array(values)+np.array(values2))
# 设置标签和颜色
plt.ylabel('Scores')
plt.xlabel('Groups')
plt.title('Scores by group and test')
plt.legend((p1[0], p2[0], p3[0]), ('Group 1', 'Group 2', 'Group 3'))
plt.show()
上面的代码中,我们使用了 bottom
参数来设置每组数据的起始位置,从而实现堆叠效果。同时,我们也设置了标签和标题,对图表进行了简单的美化。
通过上面的示例代码,我们可以看到 Matplotlib 提供了非常方便的工具来创建堆叠条形图。在实际应用中,我们只需要根据具体的数据和需求进行调整,就可以创建出更加适合自己需要的堆叠条形图了。