Python数据可视化 -- 饼图

作者: 2023开始学 | 来源:发表于2019-06-02 21:35 被阅读1次

matplotlib模块

选择matplotlib模块绘制饼图,首先需要导入该模块的子模块pyplot,然后调用模块中的pie函数

pie(x, explode, labels, colors, autopct, pctdistance, shadow, labeldistance, startangle, radius, counterclock, wedgeprops, textprops, center=(0,0), frame=False)

x:绘图的数据,赋值时x可带可不带,如,x=edu, 或直接写edu

startangle:饼图的初始摆放角度
counterclock:是否让饼图按逆时针顺序呈现,是:True 逆时针 , 否:False顺时针
注意:不管逆时针,还是顺时针,水平向右为0度,如果startangle=60,则逆时针60度的位置,为饼图的起始位置

explode:指定饼图的某些部分突出显示,即呈分裂状、爆炸式,和其他的部分分离出来
labels:饼图的标签说明,即每一块代表的内容
colors:饼图的填充颜色,颜色表示可以用十六进制,也可以用具体的颜色名称,如red

explode, labels, color:需要根据x中数据的位置,设置对应位置数据的这三种属性,三种属性需要提前设置好,然后在函数中调用
explode=[0,0.1,0,0,0] :0.1是指要分裂的这块饼图到中心点的距离

autopct:添加百分比显示,每一块饼图的占比以百分比显示
百分比格式设置:%.1f%%,要用2个%才能显示出百分号

pctdistance:设置百分比标签与圆心的距离
labeldistance:label属性显示的标签与圆心的距离

radius:饼图的半径大小,radius:半径,半径范围
wedgeprops:饼图的内外边界属性,如,边界线的粗细linewidth,颜色edgecolor等
wedgeprops属性中的内是指各个饼图块的分界线
wedgeprops设置值时,以字典格式,wedgeprops={'linewidth' :15, 'edgecolor' : 'green' }

textprops:设置饼图中文本的属性,如字体大小fontsize, 颜色color
数值标签、文本标签、图形的标题title

import matplotlib.pyplot as plt
import pandas as pd


plt.rcParams['font.sans-serif']=['Microsoft YaHei']
plt.rcParams['axes.unicode_minus']=False

edu=(0.2515,0.3724,0.33336,0.0368,0.0057)
labels=('中专','大专','本科','硕士','其他')
explode=[0,0.1,0,0,0]
color=['yellow','red','brown','green','purple']
plt.axes(aspect='equal')


plt.pie(x=edu,labels=labels,autopct='%.1f%%',
explode=explode,colors=color,
wedgeprops={'linewidth':1.5,'edgecolor':'black'},
textprops={'fontsize':10,'color':'black'})

plt.title('失信用户的受教育水平分布')
plt.show()

image.png

相关文章

网友评论

    本文标题:Python数据可视化 -- 饼图

    本文链接:https://www.haomeiwen.com/subject/zfdfxctx.html