matplotlib基础绘图命令之errorbar的使用


Posted in Python onAugust 13, 2020

在matplotlib中,errorbar方法用于绘制带误差线的折线图,基本用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

yerr参数用于指定y轴水平的误差,同时该方法也支持x轴水平的误差,对应参数xerr。指定误差值有多种方式,上述代码展示的是指定一个统一标量的用法,此时,所以的点误差值都一样。

除此之外,还可以指定为一个和点的个数相同的数组,为每个点单独设置误差值,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=[1, 2, 3, 4])

输出结果如下

matplotlib基础绘图命令之errorbar的使用

另外,考虑到每个点的上下误差会不同,也支持用行数为2的多维数组来单独指定每个点上下的误差值,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=[[1,2,3,4],[1, 2, 3, 4]])

输出结果如下

matplotlib基础绘图命令之errorbar的使用

xerr参数的用法和yerr相同,这里不再赘述,示例如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], xerr=1)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

errorbar方法支持同时指定xerr和yerr参数,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], xerr=0.5, yerr=0.5)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

对于误差图的样式,可以通过以下几个参数来个性化指定

1. fmt

fmt参数的值和plot方法中指定点的颜色,形状,线条风格的缩写方式相同,示例如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, fmt='co--')

上述代码同时指定了3个属性,输出结果如下

matplotlib基础绘图命令之errorbar的使用

默认的图中只有线条这一元素,所以当我们指定了点的属性时,如果不指定线条的风格等属性,则对应的属性为空,线条元素不会显示,示例如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, fmt='co')

上述代码没有指定线条的风格,输出结果如下

matplotlib基础绘图命令之errorbar的使用

再来看一个例子,示例如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, fmt='c')

上述代码只指定了颜色属性,输出结果如下

matplotlib基础绘图命令之errorbar的使用

2. ecolor

ecolor参数指定error bar的颜色,可以和折线的颜色加以区分,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, fmt='co--', ecolor='g')

输出结果如下

matplotlib基础绘图命令之errorbar的使用

3. elinewidth

elinewidth参数指定error bar的线条宽度,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, fmt='ro-',ecolor='k',elinewidth=10)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

4. lims系列参数

lims系列参数用于控制误差线的显示,对于x轴水平的误差线而言,有以下两个参数

1. xuplims

2. xlolims

对于y轴水平的误差线而言,有以下两个参数

1. uplims

2. lolims

这四个参数默认的取值为False, 当取值为True时,对应方向的误差线不显示,同时在另外一个方向上的误差线上,会用箭头加以标识。

当uplims参数的值为True时,向上的误差线不显示,向下的误差线加箭头,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, uplims=True)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

当lolims参数的值为True时,向下的误差线不显示,向上的误差线加箭头,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, lolims=True)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

当uplims和lolims参数的值都为True时,双向的误差线都加箭头,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, uplims=True, lolims=True)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

除了指定为标量外,lims系列参数的值也可以是一个列表,为每个点单独设值,用法如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, uplims=[False, True, False, True], lolims=[True, False, True, False])

输出结果如下

matplotlib基础绘图命令之errorbar的使用

不同的True和False的组合可以实现不同的效果,示例如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=0.5, uplims=[True,True,False,False],lolims=[True,False,True,False])

输出结果如下

matplotlib基础绘图命令之errorbar的使用

和xerr,yerr类似,我们也可以同时指定4个lims参数,示例如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=0.5, uplims=[True,True,False,False],lolims=[True,False,True,False],xerr=0.5, xuplims=[True,False,True,False],xlolims=[True,True,False,False])

输出结果如下

matplotlib基础绘图命令之errorbar的使用

5. errorevery

errorevery参数用于指定误差线的抽样频率,默认情况下,每个点的误差线都会显示,当点很多且密集分布时, 每个点都显示误差线的话,就很难看出有效的信息,比如下图

plt.errorbar(x=range(100), y=range(100),yerr=50)

matplotlib基础绘图命令之errorbar的使用

过于密集的情况下,可以使用errorevery参数进行抽样,基本用法如下

plt.errorbar(x=range(100), y=range(100),yerr=50,errorevery=6)

上述代码表示从第一个点开始,每6个点画一个误差线,这样抽样之后,误差线就不那么密集了,输出结果如下

matplotlib基础绘图命令之errorbar的使用

除了以上几个专属的基本参数外,还有很多的通用参数,可以对errorbar的样式进行精细调整,示例如下

plt.errorbar(x=[1, 2, 3, 4], y=[1, 2, 3, 4], yerr=1, marker='s', mfc='red', mec='green', ms=20, mew=4)

输出结果如下

matplotlib基础绘图命令之errorbar的使用

errorbar的参数较多,熟练掌握常用的几个即可。

到此这篇关于matplotlib基础绘图命令之errorbar的使用的文章就介绍到这了,更多相关matplotlib errorbar内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python批量下载图片的三种方法
Apr 22 Python
Python实现二分法算法实例
Feb 02 Python
Python中用于返回绝对值的abs()方法
May 14 Python
Python os模块学习笔记
Jun 21 Python
详解Python中的type和object
Aug 15 Python
使用python serial 获取所有的串口名称的实例
Jul 02 Python
Python进程间通信 multiProcessing Queue队列实现详解
Sep 23 Python
Python算法中的时间复杂度问题
Nov 19 Python
pytorch 中pad函数toch.nn.functional.pad()的用法
Jan 08 Python
Pytorch框架实现mnist手写库识别(与tensorflow对比)
Jul 20 Python
你喜欢篮球吗?Python实现篮球游戏
Jun 11 Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 Python
Python如何读写CSV文件
Aug 13 #Python
区分python中的进程与线程
Aug 13 #Python
python判断一个变量是否已经设置的方法
Aug 13 #Python
vscode+PyQt5安装详解步骤
Aug 12 #Python
python使用列表的最佳方案
Aug 12 #Python
Python实现播放和录制声音的功能
Aug 12 #Python
Python实现文件压缩和解压的示例代码
Aug 12 #Python
You might like
php入门学习知识点五 关于php数组的几个基本操作
2011/07/14 PHP
详解PHP变量传值赋值和引用赋值变量销毁
2019/03/23 PHP
jQuery.validate 常用方法及需要注意的问题
2013/03/20 Javascript
jquery和javascript的区别(常用方法比较)
2013/07/04 Javascript
获取非最后一列td值并将title设为该值的方法
2013/10/30 Javascript
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
jQuery如何获取同一个类标签的所有值(默认无法获取)
2014/09/25 Javascript
js实现同一个页面多个渐变效果的方法
2015/04/10 Javascript
纯JavaScript基于notie.js插件实现消息提示特效
2016/01/18 Javascript
javascript-解决mongoose数据查询的异步操作
2016/12/22 Javascript
vue中组件的过渡动画及实现代码
2018/11/21 Javascript
JavaScript设计模式之享元模式实例详解
2019/01/17 Javascript
JavaScript显式数据类型转换详解
2019/03/18 Javascript
11个教程中不常被提及的JavaScript小技巧(推荐)
2019/04/17 Javascript
微信小程序位置授权处理方法
2019/06/13 Javascript
微信小程序实现圆形进度条动画
2020/11/18 Javascript
javascript实现自由编辑图片代码详解
2019/06/21 Javascript
详解JavaScript原型与原型链
2020/11/16 Javascript
[04:36]DOTA2国际邀请赛 ti3精彩集锦
2013/08/19 DOTA
Python中return self的用法详解
2018/07/27 Python
对python实现模板生成脚本的方法详解
2019/01/30 Python
详解python中的hashlib模块的使用
2019/04/22 Python
python opencv 读取图片 返回图片某像素点的b,g,r值的实现方法
2019/07/03 Python
详解python tkinter模块安装过程
2020/01/06 Python
django之从html页面表单获取输入的数据实例
2020/03/16 Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
2020/08/22 Python
日本食品网上商店:JaponShop.com
2017/11/28 全球购物
自我鉴定四大框架
2014/01/17 职场文书
浙江文明网签名寄语
2014/01/18 职场文书
讲座主持词
2014/03/20 职场文书
2014年驾驶员工作总结
2014/11/18 职场文书
清明节寄语2015
2015/03/23 职场文书
《生物入侵者》教学反思
2016/02/16 职场文书
Pandas数据类型之category的用法
2021/06/28 Python
Python中with上下文管理协议的作用及用法
2022/03/18 Python
从结婚开始的恋爱故事。小说《我的美好婚事》TV动画化决定
2022/04/07 日漫