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实现巡检系统(solaris)示例
Apr 02 Python
Python对象的深拷贝和浅拷贝详解
Aug 25 Python
将Python中的数据存储到系统本地的简单方法
Apr 11 Python
Django项目中model的数据处理以及页面交互方法
May 30 Python
django反向解析和正向解析的方式
Jun 05 Python
django Serializer序列化使用方法详解
Oct 16 Python
利用Pycharm断点调试Python程序的方法
Nov 29 Python
python删除文件夹下相同文件和无法打开的图片
Jul 16 Python
如何使用django的MTV开发模式返回一个网页
Jul 22 Python
python多进程(加入进程池)操作常见案例
Oct 21 Python
如何在Python 游戏中模拟引力
Mar 27 Python
jupyternotebook 撤销删除的操作方式
Apr 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
使用PHP的日期与时间函数技巧
2008/04/24 PHP
php 文件上传系统手记
2009/10/26 PHP
8个必备的PHP功能实例代码
2013/10/27 PHP
PHP7中I/O模型内核剖析详解
2019/04/14 PHP
js 跨域和ajax 跨域问题小结
2009/07/01 Javascript
关于javascript DOM事件模型的两件事
2010/07/22 Javascript
兼容IE与firefox火狐的回车事件(js与jquery)
2010/10/20 Javascript
jQuery如何将选中的对象转化为原始的DOM对象
2014/06/09 Javascript
jquery读取xml文件实现省市县三级联动的方法
2015/05/29 Javascript
基于JS代码实现实时显示系统时间
2016/06/16 Javascript
EasyUI中在表单提交之前进行验证
2016/07/19 Javascript
node.js基于fs模块对系统文件及目录进行读写操作的方法详解
2017/11/10 Javascript
web前端vue之vuex单独一文件使用方式实例详解
2018/01/11 Javascript
Vue项目中使用Vux的安装过程
2018/05/01 Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
2018/07/12 Javascript
VsCode与Node.js知识点详解
2019/09/05 Javascript
JS实现轮播图效果
2020/01/11 Javascript
小程序双头slider选择器的实现示例
2020/03/31 Javascript
简单的python后台管理程序
2017/04/13 Python
python matplotlib中文显示参数设置解析
2017/12/15 Python
浅析Python装饰器以及装饰器模式
2018/05/28 Python
详解Python3注释知识点
2019/02/19 Python
Django框架登录加上验证码校验实现验证功能示例
2019/05/23 Python
Python搭建代理IP池实现存储IP的方法
2019/10/27 Python
Python操作注册表详细步骤介绍
2020/02/05 Python
Python如何给你的程序做性能测试
2020/07/29 Python
Python3+selenium配置常见报错解决方案
2020/08/28 Python
基于python爬取梨视频实现过程解析
2020/11/09 Python
基于HTML5 FileSystem API的使用介绍
2013/04/24 HTML / CSS
详解HTML5中的picture元素响应式处理图片
2018/01/03 HTML / CSS
JAVA代码查错题
2014/10/10 面试题
自荐信封面
2013/12/04 职场文书
储备店长岗位职责
2015/04/14 职场文书
公司车辆管理制度
2015/08/04 职场文书
JS 4个超级实用的小技巧 提升开发效率
2021/10/05 Javascript
MySQL约束(创建表时的各种条件说明)
2022/06/21 MySQL