python matplotlib饼状图参数及用法解析


Posted in Python onNovember 04, 2019

这篇文章主要介绍了python matplotlib饼状图参数及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

在python的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轴的范围和饼图的中心位置;

实例

1.基本的画图函数

import matplotlib.pyplot as plt
#解决中文乱码问题
# 正常显示中文标签
plt.rcParams['font.sans-serif']=['SimHei']
# 用来正常显示负号
plt.rcParams['axes.unicode_minus']=False
#刻度的大小
plt.rcParams['axes.labelsize'] = 16
#线的粗细
plt.rcParams['lines.linewidth'] = 2
#x轴的大小
plt.rcParams['xtick.labelsize'] = 14
#y轴的大小
plt.rcParams['ytick.labelsize'] = 14
#图例大小
plt.rcParams['legend.fontsize'] = 14
#图的大小
plt.rcParams['figure.figsize'] = [12,8]
#=======================================#基本的使用实例
#定义饼的标签,
labels = ['A','B','C','E']
#每个标签所占的比例
x = [15,30,45,10]
#绘制饼图
plt.pie(x,labels=labels)
plt.show()

python matplotlib饼状图参数及用法解析

注:不加其他参数的使用这个函数,不一定是圆形;而且得到的运行结果根据参数的设置会很大,不建议如此操作。

2.绘制正圆形的饼状图

import matplotlib.pyplot as plt
labels = ['A','B','C','D']
x = [15,30,45,10]
#显示百分比
plt.pie(x,labels=labels,autopct='%3.2f%%')
#设置x,y的刻度一样,使其饼图为正圆
plt.axis('equal')
plt.show()

python matplotlib饼状图参数及用法解析

3.绘制饼状图-设置文本标签的属性值

import matplotlib.pyplot as plt
labels = ['A','B','C','D']
x = [15,30,45,10]
#显示百分比
#textprops={'fontsize':18,'color':'k'} 设置为字体大小为18,颜色黑色
plt.pie(x,labels=labels,autopct='%3.2f%%',textprops={'fontsize':18,'color':'k'})
#设置x,y的刻度一样,使其饼图为正圆
plt.axis('equal')

plt.show()

python matplotlib饼状图参数及用法解析

4.饼状图的分离与阴影设置

import matplotlib.pyplot as plt
labels = ['A','B','C','D']
x = [15,30,45,10]
#显示百分比
#饼图分离
explode = (0,0.1,0,0)
#设置阴影效果
plt.pie(x,labels=labels,autopct='%3.2f%%',explode=explode,shadow=True)
#设置x,y的刻度一样,使其饼图为正圆
plt.axis('equal')

plt.show()

python matplotlib饼状图参数及用法解析

5.起始角度

import matplotlib.pyplot as plt

labels = ['A','B','C','D']

x = [15,30,45,10]

#显示百分比
#饼图分离
explode = (0,0.1,0,0)

#设置阴影效果
#startangle,为起始角度,0表示从0开始逆时针旋转,为第一块。
plt.pie(x,labels=labels,autopct='%3.2f%%',explode=explode,shadow=True,startangle=60)

#设置x,y的刻度一样,使其饼图为正圆
plt.axis('equal')

plt.show()

python matplotlib饼状图参数及用法解析

6圆心距离与提示标签并保存到本地

import matplotlib.pyplot as plt

labels = ['A','B','C','D']

x = [15,30,45,10]

#显示百分比
#饼图分离
explode = (0,0.1,0,0)

#设置阴影效果
#startangle,为起始角度,0表示从0开始逆时针旋转,为第一块。
#pctdistance,百分比的文本离圆心的距离为0.5
plt.pie(x,labels=labels,autopct='%3.2f%%',explode=explode,shadow=True,startangle=60,pctdistance=0.8)

#设置x,y的刻度一样,使其饼图为正圆
plt.axis('equal')
plt.legend()
#保存到本地文件夹
plt.savefig('./饼图.png')
plt.show()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 文件操作技巧(File operation) 实例代码分析
Aug 11 Python
python with statement 进行文件操作指南
Aug 22 Python
Python Matplotlib库入门指南
May 18 Python
Python文件操作基本流程代码实例
Dec 11 Python
Flask模拟实现CSRF攻击的方法
Jul 24 Python
Django添加feeds功能的示例
Aug 07 Python
Opencv+Python 色彩通道拆分及合并的示例
Dec 08 Python
对Python Pexpect 模块的使用说明详解
Feb 14 Python
django多对多表的创建,级联删除及手动创建第三张表
Jul 25 Python
django 微信网页授权认证api的步骤详解
Jul 30 Python
python实现飞行棋游戏
Feb 05 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
Aug 17 Python
python制作朋友圈九宫格图片
Nov 03 #Python
python使用yield压平嵌套字典的超简单方法
Nov 02 #Python
基于python实现从尾到头打印链表
Nov 02 #Python
pandas 空数据处理方法详解
Nov 02 #Python
python pyinstaller打包exe报错的解决方法
Nov 02 #Python
python自动生成model文件过程详解
Nov 02 #Python
python__name__原理及用法详解
Nov 02 #Python
You might like
yii数据库的查询方法
2015/12/28 PHP
php一个文件搞定微信jssdk配置
2016/12/12 PHP
PHP实现的XML操作类【XML Library】
2016/12/29 PHP
PHP关于foreach复制知识点总结
2019/01/28 PHP
JavaScript CSS修改学习第五章 给“上传”添加样式
2010/02/19 Javascript
JQuery中判断一个元素下面是否有内容或者有某个标签的判断代码
2012/02/02 Javascript
javascript函数以及基础写法100多条实用整理
2013/01/13 Javascript
iframe里的页面禁止右键事件的方法
2014/06/10 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
jquery实现的Accordion折叠面板效果代码
2015/09/02 Javascript
AngularJS基础 ng-keydown 指令简单示例
2016/08/02 Javascript
jQuery如何解决IE输入框不能输入的问题
2016/10/08 Javascript
AngularJS动态绑定HTML的方法分析
2016/11/07 Javascript
JS实现JSON.stringify的实例代码讲解
2017/02/07 Javascript
react性能优化达到最大化的方法 immutable.js使用的必要性
2017/03/09 Javascript
nodejs创建简易web服务器与文件读写的实例
2017/09/07 NodeJs
AngularJS中ng-options实现下拉列表的数据绑定方法
2018/08/13 Javascript
JS中验证整数和小数的正则表达式
2018/10/08 Javascript
vue实现pdf文档在线预览功能
2019/11/26 Javascript
JavaScript中的各种宽高属性的实现
2020/05/08 Javascript
vue实现单一筛选、删除筛选条件
2020/10/26 Javascript
解决pycharm双击但是无法打开的情况
2020/10/31 Javascript
Centos7 Python3下安装scrapy的详细步骤
2018/03/15 Python
Python Numpy库datetime类型的处理详解
2019/07/13 Python
python中update的基本使用方法详解
2019/07/17 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
Python自动化xpath实现自动抢票抢货
2020/09/19 Python
基于python+selenium自动健康打卡的实现代码
2021/01/13 Python
大学生水文观测实习自我鉴定
2013/09/29 职场文书
学习新党章思想汇报
2014/01/09 职场文书
《沙漠中的绿洲》教学反思
2014/04/24 职场文书
三好生演讲稿
2014/09/12 职场文书
教师党员自我剖析材料
2014/09/29 职场文书
中层干部考核评语
2015/01/04 职场文书
Tomcat执行startup.bat出现闪退的原因及解决办法
2022/04/20 Servers
Python OpenGL基本配置方式
2022/05/20 Python