Python数据可视化:使用Matplotlib绘制饼状图实例
本文通过Python的Matplotlib库演示如何绘制论文中常见的饼状图。详细解析了labels、sizes、explode及autopct等关键参数的用法,展示了如何调整文本大小、角度及图例位置,为数据可视化提供完整代码参考。
Python饼状图绘制目标与准备
本节介绍如何利用Python实现论文中所需的饼状图效果。
首先需要明确原始图表的样式与结构,以便在代码中复现。

接下来提供具体的Python代码实现方案,核心依赖Matplotlib库。
Matplotlib核心代码实现与参数解析
# # 饼状图
# plot.figure(figsize=(8,8))
labels = [u'Canteen', u'Supermarket', u'Dorm', u'Others']
sizes = [73, 21, 4, 2]
colors = ['red', 'yellow', 'blue', 'green']
explode = (0.05, 0, 0, 0)
patches, l_text, p_text = plot.pie(sizes, explode=explode, labels=labels, colors=colors,
labeldistance=1.1, autopct='%2.0f%%', shadow=False,
startangle=90, pctdistance=0.6)
# labeldistance,文本的位置离远点有多远,1.1指1.1倍半径的位置
# autopct,圆里面的文本格式,%3.1f%%表示小数有三位,整数有一位的浮点数
# shadow,饼是否有阴影
# startangle,起始角度,0,表示从0开始逆时针转,为第一块。一般选择从90度开始比较好看
# pctdistance,百分比的text离圆心的距离
# patches, l_texts, p_texts,为了得到饼图的返回值,p_texts饼图内部文本的,l_texts饼图外label的文本
# 改变文本的大小
# 方法是把每一个text遍历。调用set_size方法设置它的属性
for t in l_text:
t.set_size = 30
for t in p_text:
t.set_size = 20
# 设置x,y轴刻度一致,这样饼图才能是圆的
plot.axis('equal')
plot.legend(loc='upper left', bbox_to_anchor=(-0.1, 1))
# loc: 表示legend的位置,包括'upper right','upper left','lower right','lower left'等
# bbox_to_anchor: 表示legend距离图形之间的距离,当出现图形与legend重叠时,可使用bbox_to_anchor进行调整legend的位置
# 由两个参数决定,第一个参数为legend距离左边的距离,第二个参数为距离下面的距离
plot.grid()
plot.show()
图表生成结果与细节调整
代码执行后生成的饼状图结果如下所示。

以上就是Python数据可视化中饼状图绘制的完整实例讲解,希望能为读者提供有效的参考与帮助。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













