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 urlopen()函数 示例分享
Jun 12 Python
python自动化测试之从命令行运行测试用例with verbosity
Sep 28 Python
python编写微信远程控制电脑的程序
Jan 05 Python
Python爬虫之网页图片抓取的方法
Jul 16 Python
python 检查是否为中文字符串的方法
Dec 28 Python
在win10和linux上分别安装Python虚拟环境的方法步骤
May 09 Python
Python之NumPy(axis=0 与axis=1)区分详解
May 27 Python
Python 根据数据模板创建shapefile的实现
Nov 26 Python
解决pyshp UnicodeDecodeError的问题
Dec 06 Python
python音频处理的示例详解
Dec 23 Python
Python爬虫之爬取最新更新的小说网站
May 06 Python
聊聊pytorch测试的时候为何要加上model.eval()
May 23 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中simplexml_load_string函数使用说明
2011/01/01 PHP
php+js实现图片的上传、裁剪、预览、提交示例
2013/08/27 PHP
php中使用PHPExcel读写excel(xls)文件的方法
2014/09/15 PHP
php使用fputcsv()函数csv文件读写数据的方法
2015/01/06 PHP
php采集神器cURL使用方法详解
2016/02/19 PHP
PHP使用curl函数发送Post请求的注意事项
2016/11/26 PHP
PHP递归统计系统中代码行数
2019/09/19 PHP
laravel 关联关系遍历数组的例子
2019/10/10 PHP
JavaScript学习笔记(十)
2010/01/17 Javascript
JavaScript 原型与继承说明
2010/06/09 Javascript
jQuery布局插件UI Layout简介及使用方法
2013/04/03 Javascript
jQuery中die()方法用法实例
2015/01/19 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
javascript实现瀑布流动态加载图片原理
2016/08/12 Javascript
详解微信小程序Radio选中样式切换
2017/07/06 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
[53:10]完美世界DOTA2联赛决赛日 FTD vs GXR 第二场 11.08
2020/11/11 DOTA
Python实现识别手写数字 Python图片读入与处理
2020/03/23 Python
python程序快速缩进多行代码方法总结
2019/06/23 Python
Python爬虫动态ip代理防止被封的方法
2019/07/07 Python
在Python函数中输入任意数量参数的实例
2019/07/16 Python
python实现将视频按帧读取到自定义目录
2019/12/10 Python
利用python实现.dcm格式图像转为.jpg格式
2020/01/13 Python
tensorflow使用L2 regularization正则化修正overfitting过拟合方式
2020/05/22 Python
通过实例简单了解python yield使用方法
2020/08/06 Python
美国知名的百货清仓店:Neiman Marcus Last Call
2016/08/03 全球购物
巴基斯坦购物网站:Goto
2019/03/11 全球购物
什么是TCP/IP
2014/07/27 面试题
工商管理实习自我鉴定
2013/09/28 职场文书
《影子》教学反思
2014/02/21 职场文书
食品安全演讲稿
2014/09/01 职场文书
安全生产隐患排查制度
2015/08/05 职场文书
观看《信仰》心得体会
2016/01/15 职场文书
用JS实现飞机大战小游戏
2021/06/09 Javascript
Redis特殊数据类型Geospatial地理空间
2022/06/01 Redis