plt.pie()
—— 饼图(Pie Chart)
matplotlib.pyplot.pie()
用于绘制饼图,适用于 展示数据占比,如市场份额、人口分布等。
1. 语法
import matplotlib.pyplot as plt
plt.pie(sizes, labels=None, colors=None, autopct=None, startangle=0, explode=None, shadow=False)
主要参数
参数 | 作用 |
---|---|
sizes | 每个部分的数值(列表/数组) |
labels | 每个部分的标签 |
colors | 颜色(["red", "blue"] ) |
autopct | 显示百分比("%1.1f%%" ) |
startangle | 起始角度(默认 0 ,单位 ° ) |
explode | 突出某部分(列表,0.1 表示偏移 10%) |
shadow | 是否添加阴影(True / False ) |
2. 基本示例
2.1 画基本饼图
import matplotlib.pyplot as plt
# 数据
sizes = [30, 20, 50]
labels = ["A", "B", "C"]
# 绘制饼图
plt.pie(sizes, labels=labels)
plt.title("Basic Pie Chart")
plt.show()
📌 作用
sizes
表示每个部分的大小。labels
为每部分添加标签。
2.2 显示百分比(autopct
参数)
plt.pie(sizes, labels=labels, autopct="%1.1f%%")
plt.title("Pie Chart with Percentages")
plt.show()
📌 作用
autopct="%1.1f%%"
显示百分比(保留 1 位小数)。
2.3 调整起始角度(startangle
参数)
plt.pie(sizes, labels=labels, autopct="%1.1f%%", startangle=90)
plt.title("Rotated Pie Chart")
plt.show()
📌 作用
startangle=90
从 90° 开始绘制(调整方向)。
3. 美观调整
3.1 突出某部分(explode
参数)
explode = [0, 0.1, 0] # 突出 B
plt.pie(sizes, labels=labels, autopct="%1.1f%%", explode=explode)
plt.title("Exploded Pie Chart")
plt.show()
📌 作用
explode=[0, 0.1, 0]
让 “B” 偏移 10%。
3.2 添加阴影(shadow=True
)
plt.pie(sizes, labels=labels, autopct="%1.1f%%", shadow=True)
plt.title("Pie Chart with Shadow")
plt.show()
📌 作用
shadow=True
添加阴影,提高视觉效果。
3.3 选择颜色(colors
参数)
colors = ["red", "blue", "green"]
plt.pie(sizes, labels=labels, autopct="%1.1f%%", colors=colors)
plt.title("Custom Color Pie Chart")
plt.show()
📌 作用
colors=["red", "blue", "green"]
自定义颜色。
4. plt.pie()
vs plt.bar()
plt.pie() | plt.bar() | |
---|---|---|
作用 | 展示占比 | 展示数值大小 |
适用于 | 市场份额、人口分布 | 分类数据对比 |
5. 总结
✅ plt.pie()
适用于数据占比可视化,支持 百分比、突出部分、颜色调整。
✅ 常见参数
autopct="%1.1f%%"
显示百分比,explode=[0, 0.1, 0]
突出部分。shadow=True
添加阴影,colors=["red", "blue"]
自定义颜色。