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 简单搭建阻塞式单进程,多进程,多线程服务的实例
Nov 01 Python
Python数据结构与算法之图的基本实现及迭代器实例详解
Dec 12 Python
python 实现判断ip连通性的方法总结
Apr 22 Python
django反向解析URL和URL命名空间的方法
Jun 05 Python
Python使用正则表达式分割字符串的实现方法
Jul 16 Python
softmax及python实现过程解析
Sep 30 Python
python 使用opencv 把视频分割成图片示例
Dec 12 Python
python DataFrame转dict字典过程详解
Dec 26 Python
快速查找Python安装路径方法
Feb 06 Python
实现ECharts双Y轴左右刻度线一致的例子
May 16 Python
Python 的 __str__ 和 __repr__ 方法对比
Sep 02 Python
python自动打开浏览器下载zip并提取内容写入excel
Jan 04 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使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
php实现求相对时间函数
2015/06/15 PHP
php5.3后静态绑定用法详解
2016/11/11 PHP
PHP 实现文件压缩解压操作的方法
2019/06/14 PHP
认识延迟时间为0的setTimeout
2008/05/16 Javascript
仿微博字符限制效果实现代码
2012/04/20 Javascript
如何制作浮动广告 JavaScript制作浮动广告代码
2012/12/30 Javascript
jquery插件珍藏(图片局部放大/信息提示框)
2013/01/08 Javascript
xmlhttp缓存清除的2种解决方法
2013/12/13 Javascript
AngularJS基础学习笔记之简单介绍
2015/05/10 Javascript
js的form表单提交url传参数(包含+等特殊字符)的两种解决方法
2016/05/25 Javascript
AngularJS中update两次出现$promise属性无法识别的解决方法
2017/01/05 Javascript
seajs模块压缩问题与解决方法实例分析
2017/10/10 Javascript
使用vue实现grid-layout功能实例代码
2018/01/05 Javascript
vue-cli webpack模板项目搭建及打包时路径问题的解决方法
2018/02/26 Javascript
原生JS实现的简单轮播图功能【适合新手】
2018/08/17 Javascript
jQuery 获取除某指定对象外的其他对象 ( :not() 与.not())
2018/10/10 jQuery
微信小程序MUI导航栏透明渐变功能示例(通过改变rgba的a值实现)
2019/01/24 Javascript
如何在Vue中抽离接口配置文件
2019/10/31 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
[46:25]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第二局
2016/03/05 DOTA
python中dir函数用法分析
2015/04/17 Python
基于python 字符编码的理解
2017/09/02 Python
python搭建服务器实现两个Android客户端间收发消息
2018/04/12 Python
使用 Python 遍历目录树的方法
2020/02/29 Python
详解pandas中iloc, loc和ix的区别和联系
2020/03/09 Python
CSS3实现任意图片lowpoly动画效果实例
2017/05/11 HTML / CSS
css3圆角样式分享自定义按钮样式
2013/12/27 HTML / CSS
canvas基础之图形验证码的示例
2018/01/02 HTML / CSS
惊艳的手工时装首饰:Migonne Gavigan
2018/02/23 全球购物
法国在线药房:Shop Pharmacie
2019/11/26 全球购物
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
银行优秀员工事迹材料
2014/05/29 职场文书
小学社团活动总结
2014/06/27 职场文书
4s店活动策划方案
2014/08/25 职场文书
2014镇党委书记党建工作汇报材料
2014/11/02 职场文书