ubuntu环境下Xarray+Cfgrib读取GFS气象预测数据出错

通过下面代码读取gfs数据出错:
import xarray as xr

data = xr.open_dataset('gfs.t18z.pgrb2.0p25.f006', engine='cfgrib')
print(data)

错误提示:

/home/ricky/anaconda3/lib/python3.9/site-packages/xarray/backends/cfgrib_.py:27: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message
  warnings.warn(
/home/ricky/anaconda3/lib/python3.9/site-packages/xarray/backends/plugins.py:65: RuntimeWarning: Engine 'cfgrib' loading failed:
Cannot find the ecCodes library
  warnings.warn(f"Engine {name!r} loading failed:\n{ex}", RuntimeWarning)
Traceback (most recent call last):
  File "/home/ricky/PycharmProjects/python3.9/main.py", line 4, in <module>
    data = xr.open_dataset(path, engine='cfgrib')
  File "/home/ricky/anaconda3/lib/python3.9/site-packages/xarray/backends/api.py", line 481, in open_dataset
    backend = plugins.get_backend(engine)
  File "/home/ricky/anaconda3/lib/python3.9/site-packages/xarray/backends/plugins.py", line 160, in get_backend
    raise ValueError(
ValueError: unrecognized engine cfgrib must be one of: ['netcdf4', 'scipy', 'store']

在代码段中添加

import cfgrib

依然报错。

参考
三分钟解决cfgrib的安装问题_六个橙子_lc的博客-CSDN博客_cfgrib​​​​​​此处建议大家直接看方法二方法一(参考教程https://www.jianshu.com/p/683d3bb5b3cd )第一步:在该网站https://anaconda.org/下载适合版本的eccodes,在conda中进行离线安装conda install /your/eccodes/path --offline第二步:Ctrl+r ,输入cmd,在cmd中为eccodes配置路径set "ECCODES_SAMPLES_PATH=C:\Users\dell\Anaconda3\Librarhttps://blog.csdn.net/lc_lcrystal/article/details/121554052

为工程重新创建conda环境, 并重新安装

conda install xarray
conda install -c http://conda.anaconda.org/conda-forge eccodes
conda install -c http://conda.anaconda.org/conda-forge cfgrib

在pycharm工程中更改解释器为新创建的解释器,运行程序,成功读取。

<xarray.Dataset>
Dimensions:        (isobaricInhPa: 5, latitude: 721, longitude: 1440)
Coordinates:
    time           datetime64[ns] ...
    step           timedelta64[ns] ...
  * isobaricInhPa  (isobaricInhPa) float64 70.0 50.0 40.0 30.0 20.0
  * latitude       (latitude) float64 90.0 89.75 89.5 ... -89.5 -89.75 -90.0
  * longitude      (longitude) float64 0.0 0.25 0.5 0.75 ... 359.2 359.5 359.8
    valid_time     datetime64[ns] ...
Data variables:
    u              (isobaricInhPa, latitude, longitude) float32 ...
    v              (isobaricInhPa, latitude, longitude) float32 ...
Attributes:
    GRIB_edition:            2
    GRIB_centre:             kwbc
    GRIB_centreDescription:  US National Weather Service - NCEP
    GRIB_subCentre:          0
    Conventions:             CF-1.7
    institution:             US National Weather Service - NCEP
    history:                 2022-10-10T17:18 GRIB to CDM+CF via cfgrib-0.9.1...

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值