如何使用Python绘制两级饼图
简介
在数据可视化中,饼图是一种常用的图表类型,用来展示各个部分占整体的比例。在Python中,我们可以使用matplotlib库来绘制饼图。本文将教你如何使用Python绘制两级饼图,即在一个饼图中展示两个层次的数据。
整体流程
首先,让我们来看一下整个过程的流程图:
journey
title 整体流程
section 完成两级饼图
开始 --> 数据准备: 准备数据
数据准备 --> 绘制第一级饼图: 绘制第一级饼图
绘制第一级饼图 --> 添加第二级饼图: 添加第二级饼图
添加第二级饼图 --> 结束: 完成两级饼图
步骤
| 步骤 | 操作 | 代码 |
|---|---|---|
| 1 | 准备数据 | ```python |
定义第一级饼图数据
sizes1 = [15, 30, 45, 10] labels1 = ['A', 'B', 'C', 'D']
定义第二级饼图数据
sizes2 = [25, 20, 35, 20] labels2 = ['W', 'X', 'Y', 'Z']
| 2 | 绘制第一级饼图 | ```python
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.pie(sizes1, labels=labels1, autopct='%1.1f%%')
plt.show()
``` |
| 3 | 添加第二级饼图 | ```python
inner_circle = plt.Circle((0, 0), 0.4, color='white')
ax.add_artist(inner_circle)
ax.pie(sizes2, labels=labels2, radius=0.7, autopct='%1.1f%%')
plt.show()
``` |
## 代码解释
- 第1步中,我们准备了两组数据,sizes1和sizes2分别表示第一级和第二级饼图的占比,labels1和labels2则是对应的标签。
- 第2步中,我们使用matplotlib.pyplot库来绘制第一级饼图,autopct='%1.1f%%'表示显示百分比,并保留一位小数。
- 第3步中,我们首先添加一个内圆,然后在现有的饼图上叠加第二级饼图,radius=0.7表示第二级饼图的大小。
## 总结
通过以上步骤,我们成功实现了用Python绘制两级饼图的目标。希望本文对你有所帮助,如果有任何疑问或建议,欢迎留言讨论。祝你在数据可视化的道路上越走越远!
















