看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
饼图(Pie Chart)广泛得应用在各个领域,用于表示不同分类的占比情况,通过弧度大小来对比各种分类。饼图通过将一个圆饼按照分类的占比划分成多个区块,整个圆饼代表数据的总量,每个区块(圆弧)表示该分类占总体的比例大小,所有区块(圆弧)的加和等于 100%。
您可以使用 DataFrame.plot.pie() 或 Series.plot.pie() 创建饼图。 如果您的数据包含任何 NaN,它们将自动填充 0。如果您的数据中有任何负值,则会引发 ValueError。
s = pd.Series(3 * np.random.rand(4),
index=['a', 'b', 'c', 'd'], name='series')
s.plot.pie(figsize=(6, 6))
DataFrame 需要指定 y 值:
df = pd.DataFrame(3 * np.random.rand(4, 2),
index=['a', 'b', 'c', 'd'],
columns=['x', 'y'])
df.plot.pie(y='x')
如果传递的总和小于 1.0,则 matplotlib 将绘制一个扇形。
series = pd.Series([0.1] * 4,
index=['a', 'b', 'c', 'd'],
name='series2')
series.plot.pie(figsize=(6, 6))
DataFrame 可以传入 subplots=True
创建子图矩阵:
df.plot.pie(subplots=True, figsize=(8, 4))
默认是有图例的,但饼图一般可以不需要图例, legend=False
:
df.plot.pie(subplots=True, figsize=(8, 4), legend=False)
如下:
s.plot.pie(labels=['AA', 'BB', 'CC', 'DD'], # 标签,指定项目名称
colors=['r', 'g', 'b', 'c'], # 指定颜色
autopct='%.2f', # 数字格式
fontsize=20, # 字体大小
figsize=(6, 6) # 图大小
)
更多参数参见 matplotlib pie 官方文档。
更新时间:June 24, 2020, 9:43 a.m. 标签:pandas 饼图