如何使用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绘制两级饼图的目标。希望本文对你有所帮助,如果有任何疑问或建议,欢迎留言讨论。祝你在数据可视化的道路上越走越远!