Matplotlib饼图的创建

  • 饼图
  • 绘制饼图
  • 嵌套饼图


饼图

饼图又称圆饼图、圆形图等,它是利用圆形及圆内扇形面积来表示数值大小的图形。是将各项的大小与各项总和的比例显示在一张“饼”中,以“饼”的大小来确定每一项的占比。饼图主要用于总体中各组成部分所占比重的研究。

饼图可以比较清楚地反映出部分与部分、部分与整体之间的比例关系,易于显示每组数据相对于总数的大小,而且显现方式直观。

绘制饼图

matplotlib用来绘制饼图的函数是pie()。常用参数如下:

Matplotlib饼图的创建_Python数据分析与可视化_python

labels = 'A','B','C','D'
sizes = [10,20,10,60]
plt.pie(sizes,labels=labels,explode = (0,0.1,0,0),autopct='%1.1f')
plt.show()

Matplotlib饼图的创建_Python数据分析与可视化_数据分析_02

嵌套饼图

嵌套饼图通常被称为空心饼图图表。空心饼图形状的效果是通过wedgeprops参数设置馅饼楔形的宽度来实现的:

fig, ax = plt.subplots()
size = 0.3
vals = np.array([[60., 32.], [37., 40.], [29., 10.]])
cmap = plt.get_cmap("tab20c")
outer_colors = cmap(np.arange(3)*4)
inner_colors = cmap(np.array([1, 2, 5, 6, 9, 10]))
ax.pie(vals.sum(axis=1), radius=1, colors=outer_colors,
       wedgeprops=dict(width=size, edgecolor='w') )
ax.pie(vals.flatten(), radius=1-size, colors=inner_colors,
       wedgeprops=dict(width=size, edgecolor='w'))
ax.set(aspect="equal" )

Matplotlib饼图的创建_Python数据分析与可视化_数据可视化_03