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 相关文章推荐
linux系统使用python获取内存使用信息脚本分享
Jan 15 Python
Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法
Apr 23 Python
Python安装使用命令行交互模块pexpect的基础教程
May 12 Python
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
Jun 18 Python
Python max内置函数详细介绍
Nov 17 Python
Python利用pandas处理Excel数据的应用详解
Jun 18 Python
python多线程扫描端口(线程池)
Sep 04 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
Dec 06 Python
jupyter notebook 多环境conda kernel配置方式
Apr 10 Python
PyQt5 控件字体样式等设置的实现
May 13 Python
Python Selenium库的基本使用教程
Jan 04 Python
Python中lru_cache的使用和实现详解
Jan 25 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求小于1000的所有水仙花数的代码
2012/01/10 PHP
php适配器模式介绍
2012/08/14 PHP
如何写php守护进程(Daemon)
2015/12/30 PHP
CodeIgniter读写分离实现方法详解
2016/01/20 PHP
php慢查询日志和错误日志使用详解
2021/02/27 PHP
JavaScript获取GridView选择的行内容
2009/04/14 Javascript
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
javascript获取URL参数与参数值的示例代码
2013/12/20 Javascript
一种新的javascript对象创建方式Object.create()
2015/12/28 Javascript
JavaScript仿百度图片浏览效果
2016/11/23 Javascript
requirejs按需加载angularjs文件实例
2017/06/08 Javascript
ES6新特性:使用export和import实现模块化详解
2017/07/31 Javascript
Vue项目分环境打包的实现步骤
2018/04/02 Javascript
在vue中使用echarts图表实例代码详解
2018/10/22 Javascript
从0到1构建vueSSR项目之node以及vue-cli3的配置
2019/03/07 Javascript
vue实现吸顶、锚点和滚动高亮按钮效果
2019/10/21 Javascript
关于vue路由缓存清除在main.js中的设置
2019/11/06 Javascript
JavaScript如何判断对象有某属性
2020/07/03 Javascript
Python中的默认参数详解
2015/06/24 Python
Eclipse中Python开发环境搭建简单教程
2016/03/23 Python
python matplotlib如何给图中的点加标签
2019/11/14 Python
Pycharm内置终端及远程SSH工具的使用教程图文详解
2020/03/19 Python
查看已安装tensorflow版本的方法示例
2020/04/19 Python
面向新手解析python Beautiful Soup基本用法
2020/07/11 Python
python简单实现9宫格图片实例
2020/09/03 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
2020/09/29 Python
python解包概念及实例
2021/02/17 Python
HTML5的新特性(1)
2016/03/03 HTML / CSS
HTML5中indexedDB 数据库的使用实例
2017/05/11 HTML / CSS
深入开展党的群众路线教育实践活动方案
2014/02/04 职场文书
中层干部培训方案
2014/06/16 职场文书
新闻专业毕业生求职信
2014/08/08 职场文书
80后创业总结的9条职场用人思想,记得收藏
2019/08/13 职场文书
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js
vue中利用mqtt服务端实现即时通讯的步骤记录
2021/07/01 Vue.js
Shell中的单中括号和双中括号的用法详解
2022/12/24 Servers