当前位置:   article > 正文

气象数据grib/grib2的处理方法汇总_meteoinfo解析grb2气象文件详细教程

meteoinfo解析grb2气象文件详细教程

目录

0、前言

1、wgrib软件

2、matlab中的nctoolbox工具箱

​3、使用python中的pygrib模块

4、使用python中的xarray、cfgrib模块

5、使用cdo工具


0、前言

        之前接触的数据格式大都是nc格式,使用matlab和python都比较熟悉怎么读取,进行数据处理工作。最近发现气象数据中格式很多采用grib\grib2格式。以下是对grib\grib2格式数据处理进行的总结。

1、wgrib软件

        首先是windows下的wgrib软件。下载软件解压缩,将其添加至环境变量中。下载地址【链接:https://pan.baidu.com/s/1JReRhtB3PgfpqYVtV9PS2Q 提取码:1111】。

        打开命令行窗口,输入wgrib2查看,结果如下,表明加载成功。

         使用wgrib2 gribfilename -netcdf ncfilename,将数据全部转换为nc格式进行处理。

        当grib文件中数据过多,而我们只需要其中部分数据时,可以通过wgirb2 gribfilename -v查看文件中变量信息,通过wgrib2 gribfilename -match varname  -netcdf ncfilename匹配变量并进行格式转换。或者 通过wgrib2 gribfilename -match varname  -csv csvfilename将文件转换为csv格式。

2、matlab中的nctoolbox工具箱

        习惯使用matlab的,可以下载nctoolbox第三方工具箱,【地址:https://code.google.com/archive/p/nctoolbox/downloads】。这里可能出现的问题时版本不匹配,我下载了最新的nctoolbox版本,matlab版本如下,会出现错误使用ncdataset的报错信息。

        改用nctoolbox-20121106版本后,运行成功。读取的数据存储在结构体中,用{}索引后即可使用切片提取所需要区域、高度的数据。

3、使用python中的pygrib模块

        安装、导入pygrib模块。使用data = pygrib.open(gribfilename)打开文件,使用var = data.select(name=" ",typeOfLevle=" ",level=" ")获取想要的特定层的变量数据。

        最后使用 data,lats,lons = var.data(lat1=min(lat),lat2=max(lat),lon1=min(lon),lon2=max(lon))切取特定区域的数据。

        使用以下代码进行变量读取和选择操作

  1. import pygrib as pg
  2. grbs = pg.open(r'D:\My_Document\Code\S2S\data\sh-20150105.grib')# 所有变量
  3. for grb in grbs:
  4. print(grb)

        使用以下代码对数据经纬度范围以及值进行查看

  1. value = data.values
  2. lat, lon = data.latitudes, data.longitudes

        使用以下代码对特定区域进行裁切

  1. z1 = data.select(name='Geopotential Height', typeOfLevel='isobaricInhPa', level=100)[0]
  2. z1, lat1, lon1 = z1.data(lat1=min(lat_era), lat2=max(lat_era), lon1=min(lon_era), lon2=max(lon_era))

4、使用python中的xarray、cfgrib模块

        使用方法与pygrib模块类似。

5、使用cdo工具

        使用ncl中的cdo工具切取指定区域、高度、的变量信息。

         可能数据量太大了?在服务器采用cdo工具对获取变量信息写入nc文件,速度比较慢。处理ECMWF的7天降水预报数据,[3:3:72,78:6:168],共40个时刻,差不多两天能处理一个月,40*30=1200个文件。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/293778
推荐阅读
相关标签
  

闽ICP备14008679号