python安装读取grib库总结(推荐)


Posted in Python onJune 24, 2020

无论安装以下哪种库,强烈建议在新环境下安装,之前在base环境下安装各种报错!!!如何在新环境下安装可参见我之前的总结或网上其他文章。

不推荐方法

1.pygrib
pygrib库基于python2.4+、numpy、pyproj、Jasper和GRIB_API,依赖库基于Linux或MacOS,GRIB_API将于2020年6月30日正式被ecCodes取代。因此,不推荐使用pygrib库。
2.GDAL
可于window下安装,安装简单,但是需借助wgrib2查看grib变量所在通道,因此不推荐。

推荐方法

xarray搭配cfgrib
优点:Linux windows MacOS均可用,安装较简单,强烈建议在新环境下安装各所需库
安装步骤:

1,新建新环境
conda creat -n cfgrib_env python=3.7.0

2.启动虚拟环境
source activate cfgrib_env

3.安装spyder xarray eccodes cfgrib及其他所需依赖库
ps:可用pip或conda安装,eccodes无需配置(有些地方写需要配置路径)

4.在新环境下启动spyder(base或其他环境下启动的spyder无效)
切换到安装路径并执行:~/anaconda3/envs/cfgrib_env/bin$ ./spyder

5.写入代码

import xarray as xr
import cfgrib

ds = xr.open_dataset('/1.grib2',engine='cfgrib')

提示错误:

DatasetBuildError: multiple values for unique key, try re-open the file with one of:
  filter_by_keys={'typeOfLevel': 'unknown'}
  filter_by_keys={'typeOfLevel': 'surface'}
  filter_by_keys={'typeOfLevel': 'isobaricInhPa'}
  filter_by_keys={'typeOfLevel': 'meanSea'}
  filter_by_keys={'typeOfLevel': 'depthBelowLandLayer'}
  filter_by_keys={'typeOfLevel': 'heightAboveGround'}
  filter_by_keys={'typeOfLevel': 'heightAboveGroundLayer'}
  filter_by_keys={'typeOfLevel': 'tropopause'}
  filter_by_keys={'typeOfLevel': 'maxWind'}
  filter_by_keys={'typeOfLevel': 'heightAboveSea'}
  filter_by_keys={'typeOfLevel': 'isothermZero'}
  filter_by_keys={'typeOfLevel': 'pressureFromGroundLayer'}
  filter_by_keys={'typeOfLevel': 'sigmaLayer'}
  filter_by_keys={'typeOfLevel': 'sigma'}
  filter_by_keys={'typeOfLevel': 'potentialVorticity'}

莫慌!!!
这是因为目前cfgrib库无法同时读取多个typeOfLevel,因此我们只需要根据提示筛选我们需要的数据就行了。原程序添加所需数据为:

ds = xr.open_dataset('/1.grib2',engine='cfgrib',backend_kwargs=
{'filter_by_keys':
{
'typeOfLevel': 'surface'
}
}
)

所需变量为:ds.变量名

折腾了好几天,做其他事情都心不在焉,搞出来一身轻~~~

总结

到此这篇关于python安装读取grib库总结的文章就介绍到这了,更多相关python安装读取grib库内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python 域名分析工具实现代码
Jul 15 Python
Python中解析JSON并同时进行自定义编码处理实例
Feb 08 Python
Python中利用sorted()函数排序的简单教程
Apr 27 Python
详解Python装饰器由浅入深
Dec 09 Python
python中OrderedDict的使用方法详解
May 05 Python
Python使用装饰器进行django开发实例代码
Feb 06 Python
使用Python获取并处理IP的类型及格式方法
Nov 01 Python
Python实现 版本号对比功能的实例代码
Apr 18 Python
python绘图模块matplotlib示例详解
Jul 26 Python
在macOS上搭建python环境的实现方法
Aug 13 Python
selenium中get_cookies()和add_cookie()的用法详解
Jan 06 Python
pip install命令安装扩展库整理
Mar 02 Python
Pytorch mask-rcnn 实现细节分享
Jun 24 #Python
在Pytorch中使用Mask R-CNN进行实例分割操作
Jun 24 #Python
OpenCV+python实现实时目标检测功能
Jun 24 #Python
基于Python下载网络图片方法汇总代码实例
Jun 24 #Python
Python 分布式缓存之Reids数据类型操作详解
Jun 24 #Python
PyTorch中model.zero_grad()和optimizer.zero_grad()用法
Jun 24 #Python
Pytorch实现将模型的所有参数的梯度清0
Jun 24 #Python
You might like
PHP图片上传类带图片显示
2006/11/25 PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
2014/06/30 PHP
php实现的简单中文验证码功能示例
2017/01/03 PHP
js 数组操作代码集锦
2009/04/28 Javascript
javascript Array.prototype.slice的使用示例
2013/11/14 Javascript
JS替换字符串中空格方法
2015/04/17 Javascript
Web 开发中Ajax的Session 超时处理方法
2017/01/19 Javascript
js获取元素下的第一级子元素的方法(推荐)
2017/03/05 Javascript
基于AngularJS实现的工资计算器实例
2017/06/16 Javascript
基于JavaScript实现数码时钟效果
2020/03/30 Javascript
Vuejs实现购物车功能
2017/11/05 Javascript
JQuery元素快速查找与操作
2018/04/22 jQuery
在vue2.0中引用element-ui组件库的方法
2018/06/21 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【圆形情况】
2018/12/13 Javascript
jquery无缝图片轮播组件封装
2020/11/25 jQuery
vue权限问题的完美解决方案
2019/05/08 Javascript
基于JavaScript实现单例模式
2019/10/30 Javascript
JS window对象简单操作完整示例
2020/01/14 Javascript
使用konva和vue-konva库实现拖拽滑块验证功能
2020/04/27 Javascript
Pandas探索之高性能函数eval和query解析
2017/10/28 Python
python机器学习实战之树回归详解
2017/12/20 Python
python3.6.3安装图文教程 TensorFlow安装配置方法
2020/06/24 Python
选择python进行数据分析的理由和优势
2019/06/25 Python
Python使用python-docx读写word文档
2019/08/26 Python
python2与python3爬虫中get与post对比解析
2019/09/18 Python
全球摩托车装备领导者:RevZilla
2017/09/04 全球购物
销售员岗位职责范本
2014/02/03 职场文书
英文自荐信范文
2015/03/25 职场文书
违规违纪检讨书范文
2015/05/06 职场文书
会议室管理制度范本
2015/08/06 职场文书
2016年学校爱国卫生月活动总结
2016/04/06 职场文书
共青团优秀团员申请书(范文)
2019/08/15 职场文书
Python超简单容易上手的画图工具库推荐
2021/05/10 Python
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android
html中两种获取标签内的值的方法
2022/06/10 HTML / CSS
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android