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实现封装得到virustotal扫描结果
Oct 05 Python
使用python实现生成用户信息
Mar 20 Python
利用python操作SQLite数据库及文件操作详解
Sep 22 Python
wxPython实现窗口用图片做背景
Apr 25 Python
python 3调用百度OCR API实现剪贴板文字识别
Sep 04 Python
Python list列表中删除多个重复元素操作示例
Feb 27 Python
人工神经网络算法知识点总结
Jun 11 Python
python之生产者消费者模型实现详解
Jul 27 Python
Python Pandas 如何shuffle(打乱)数据
Jul 30 Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
Mar 23 Python
基于Python绘制美观动态圆环图、饼图
Jun 03 Python
keras topN显示,自编写代码案例
Jul 03 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
Yii2中datetime类的使用
2016/12/17 PHP
PHP5.0~5.6 各版本兼容性cURL文件上传功能实例分析
2018/05/11 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
2020/04/23 PHP
用脚本调用样式的几种方法
2006/12/09 Javascript
用js实现预览待上传的本地图片
2007/03/15 Javascript
测试JavaScript字符串处理性能的代码
2009/12/07 Javascript
jquery向.ashx文件post中文乱码问题的解决方法
2011/03/28 Javascript
关于jQuery $.isNumeric vs. $.isNaN vs. isNaN
2013/04/15 Javascript
jquery实现简单易懂的图片展示小例子
2013/11/21 Javascript
单击某一段文字改写文本颜色
2014/06/06 Javascript
jQuery中hover方法和toggle方法使用指南
2015/02/27 Javascript
js控制文本框只输入数字和小数点的方法
2015/03/10 Javascript
Jquery使用val方法读写value值
2015/05/18 Javascript
Javascript中Array用法实例分析
2015/06/13 Javascript
jquery动态添加文本并获取值的方法
2016/10/12 Javascript
原生js封装运动框架的示例讲解
2017/10/01 Javascript
详解Webpack多环境代码打包的方法
2018/08/03 Javascript
解决微信小程序中转换时间格式IOS不兼容的问题
2019/02/15 Javascript
JavaScript显式数据类型转换详解
2019/03/18 Javascript
微信小程序调用微信支付接口的实现方法
2019/04/29 Javascript
vue实现element表格里表头信息提示功能(推荐)
2019/11/20 Javascript
python实现封装得到virustotal扫描结果
2014/10/05 Python
python3抓取中文网页的方法
2015/07/28 Python
将TensorFlow的模型网络导出为单个文件的方法
2018/04/23 Python
Django 实现图片上传和显示过程详解
2019/07/18 Python
numpy.array 操作使用简单总结
2019/11/08 Python
python3读取csv文件任意行列代码实例
2020/01/13 Python
python读取文件指定行内容实例讲解
2020/03/02 Python
浅谈keras中的Merge层(实现层的相加、相减、相乘实例)
2020/05/23 Python
香港太阳眼镜网上商店:SmartBuyGlasses香港
2016/07/22 全球购物
美国顶级户外凉鞋品牌:Chacos
2017/03/27 全球购物
企业诚信承诺书
2014/05/23 职场文书
小学生五年级大队长竞选发言稿
2014/09/12 职场文书
同事去世追悼词
2015/06/23 职场文书
详解Oracle块修改跟踪功能
2021/11/07 Oracle
MongoDB修改oplog大小的四种方法
2022/04/11 MongoDB