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的Flask框架来搭建第一个Web应用程序
Jun 04 Python
PyCharm在win10的64位系统安装实例
Nov 26 Python
使用Python机器学习降低静态日志噪声
Sep 29 Python
分享一个pycharm专业版安装的永久使用方法
Sep 24 Python
基于Django统计博客文章阅读量
Oct 29 Python
解决安装pyqt5之后无法打开spyder的问题
Dec 13 Python
Pycharm最新激活码2019(推荐)
Dec 31 Python
python 爬虫 实现增量去重和定时爬取实例
Feb 28 Python
Python selenium自动化测试模型图解
Apr 15 Python
什么是python的id函数
Jun 11 Python
python如何支持并发方法详解
Jul 25 Python
python实现简单石头剪刀布游戏
Oct 24 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 socket方式提交的post详解
2008/07/19 PHP
PHP Session机制简介及用法
2014/08/19 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
PHP防盗链的基本思想 防盗链的设置方法
2015/09/25 PHP
PHP面向对象程序设计实例分析
2016/01/26 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
2016/10/18 PHP
JAVASCRIPT IE 与 FF中兼容问题小结
2009/02/18 Javascript
自己动手开发jQuery插件教程
2011/08/25 Javascript
用jquery实现的一个超级简单的下拉菜单
2014/05/18 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
2016/09/19 Javascript
纯jQuery实现前端分页功能
2017/03/23 jQuery
原生JS实现不断变化的标签
2017/05/22 Javascript
js获取元素的偏移量offset简单方法(必看)
2017/07/05 Javascript
JavaScript全屏和退出全屏事件总结(附代码)
2017/08/17 Javascript
JavaScript实现body内任意节点的自定义属性功能示例
2017/09/18 Javascript
webpack4之SplitChunksPlugin使用指南
2018/06/12 Javascript
mpvue 项目初始化及实现授权登录的实现方法
2020/07/20 Javascript
[49:31]TFT vs Mski Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
2018/09/04 Python
python多任务及返回值的处理方法
2019/01/22 Python
解决django前后端分离csrf验证的问题
2019/02/03 Python
pycharm修改file type方式
2019/11/19 Python
numpy创建单位矩阵和对角矩阵的实例
2019/11/29 Python
用python3读取python2的pickle数据方式
2019/12/25 Python
Python range与enumerate函数区别解析
2020/02/28 Python
django ObjectDoesNotExist 和 DoesNotExist的用法
2020/07/09 Python
Python生成器generator原理及用法解析
2020/07/20 Python
婚礼证婚人证婚词
2014/01/08 职场文书
《乡愁》教学反思
2014/02/18 职场文书
《美丽的小兴安岭》教学反思
2014/02/26 职场文书
2015年手术室工作总结
2015/05/11 职场文书
小学课改工作总结
2015/08/13 职场文书
出纳2015年度工作总结范文
2015/10/14 职场文书
python中opencv实现图片文本倾斜校正
2021/06/11 Python
pycharm安装深度学习pytorch的d2l包失败问题解决
2022/03/25 Python