如何利用小游戏解决方案提升企业在金融和物联网领域的运营效率
1039
2022-09-06
从零开始学Python【11】--matplotlib(饼图)
前言
饼图。饼图的绘制可以使用matplotlib库中的pie函数,首先我们来看看这个函数的参数说明。
pie函数参数解读
plt.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=None, radius=None, counterclock=True, wedgeprops=None, textprops=None, center=(0, 0), frame=False)
x:指定绘图的数据;explode:指定饼图某些部分的突出显示,即呈现爆炸式;labels:为饼图添加标签说明,类似于图例说明;colors:指定饼图的填充色;autopct:自动添加百分比显示,可以采用格式化的方法显示;pctdistance:设置百分比标签与圆心的距离;shadow:是否添加饼图的阴影效果;labeldistance:设置各扇形标签(图例)与圆心的距离;startangle:设置饼图的初始摆放角度;radius:设置饼图的半径大小;counterclock:是否让饼图按逆时针顺序呈现;wedgeprops:设置饼图内外边界的属性,如边界线的粗细、颜色等;textprops:设置饼图中文本的属性,如字体大小、颜色等;center:指定饼图的中心点位置,默认为原点frame:是否要显示饼图背后的图框,如果设置为True的话,需要同时控制图框x轴、y轴的范围和饼图的中心位置;
饼图的绘制
案例:芝麻信用失信用户分析
中专占比25.15%,大专占比37.24%,本科占比33.36%,硕士占比3.68%,剩余的其他学历占比0.57%。对于这样一组数据,我们该如何使用饼图来呈现呢?
# 导入第三方模块import matplotlib.pyplot as plt# 设置绘图的主题风格(不妨使用R中的ggplot分隔)plt.style.use('ggplot')# 构造数据edu = [0.2515,0.3724,0.3336,0.0368,0.0057]labels = ['中专','大专','本科','硕士','其他']explode = [0,0.1,0,0,0] # 用于突出显示大专学历人群colors=['#9999ff','#ff9999','#7777aa','#2442aa','#dd5555'] # 自定义颜色# 中文乱码和坐标轴负号的处理plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']plt.rcParams['axes.unicode_minus'] = False# 将横、纵坐标轴标准化处理,保证饼图是一个正圆,否则为椭圆plt.axes(aspect='equal')# 控制x轴和y轴的范围plt.xlim(0,4)plt.ylim(0,4)# 绘制饼图plt.pie(x = edu, # 绘图数据 explode=explode, # 突出显示大专人群 labels=labels, # 添加教育水平标签 colors=colors, # 设置饼图的自定义填充色 autopct='%.1f%%', # 设置百分比的格式,这里保留一位小数 pctdistance=0.8, # 设置百分比标签与圆心的距离 labeldistance = 1.15, # 设置教育水平标签与圆心的距离 startangle = 180, # 设置饼图的初始角度 radius = 1.5, # 设置饼图的半径 counterclock = False, # 是否逆时针,这里设置为顺时针方向 wedgeprops = {'linewidth': 1.5, 'edgecolor':'green'},# 设置饼图内外边界的属性值 textprops = {'fontsize':12, 'color':'k'}, # 设置文本标签的属性值 center = (1.8,1.8), # 设置饼图的原点 frame = 1 )# 是否显示饼图的图框,这里设置显示# 删除x轴和y轴的刻度plt.xticks(())plt.yticks(())# 添加图标题plt.title('芝麻信用失信用户教育水平分布')# 显示图形plt.show()
结语
盒形图和直方图。文中相关的Python脚本和PDF版本已存放到百度云盘,可以通过下面的链接获取:
链接: 密码: 9cu4
每天进步一点点2015
学习与分享,取长补短,关注小号!
长按识别二维码 马上关注
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~