Python读取grb2资料

什么是grb格式数据?

        grb格式文件是国际气象组织一种独特的数据存储格式,所有不能直接打开,一般用于气象模式资料,当然气象模式资料也有nc格式数据和hdf格式数据,这边逐行介绍grb数据如何用python处理,部分命令不给你解释一下你还真不知道是啥意思。(我第一次接触的时候就对一些代码很困惑)

安装必要的函数库

        python读取grb2数据可以使用pygrib,安装命令如下:

conda install -c conda-forge pygrib -y

或者

pip install pygrib

直接上代码 

        每句代码都给你把注释整的明明白白的!

import pygrib #调用函数库
fr='/xxx.grib2' #文件目录
grbs = pygrib.open(fr) #打开文件
grbs.seek(0)#偏移量,一般都是设置0 表示第一个变量开始读;如果设2 则从第三个变量开始读
for grb in grbs: # 输出文件各个变量信息
    print(grb)
grb = grbs.select(name='U component of wind')[0]#从grbs中取出U component of wind变量
value = grb.values#取出'U component of wind'的值
#对于取值也可以按照如下方式选择:
value2=grb.data(lat1=None, lat2=None, lon1=None, lon2=None) 按经纬度抽取数据

常用命令总结

1. python打开grb数据

grbs = pygrib.open(fr) 

2. 确定变量偏移量(这是必须要有的命令) 

grbs.seek(0)

一般都是设置0 如果是从则从第一个变量开始读  如果设2 则从第三个变量开始读

3. 查看文件中变量信息 

for grb in grbs: # 看文件描述

     print(grb)

4. 选取单个变量的所有可用键 

keys=grb.keys()

将会返回一个可用键的序列,比如name,然后grb.name 查看这个变量姓名 

5.选取单个变量的变量信息

grb = grbs.message(2)

get the second grib message 就是第二个变量的信息 

Python读取grb2资料_第1张图片

 6. 选取单个变量的经纬度

lat, lon = grb.latlons()

#读取经纬度 .latlons()属性默认都有 有那些属性可查看下面官网API 

7.选取单个变量的变量名

grb.parameterName 

8. 选取单个变量的前面的序号

 grb.messagenumber

9. 根据经纬度范围选取单个变量

grb.data(lat1=None, lat2=None, lon1=None, lon2=None) 

{extract data, lats and lons for a subset region defined by the keywords lat1,lat2,lon1,lon2.

The default values of lat1,lat2,lon1,lon2 are None, which means the entire grid is returned.

If the grid type is unprojected lat/lon and a geographic subset is requested (by using the lat1,lat2,lon1,lon2 keywords), then 2-d arrays are returned, otherwise 1-d arrays are returned.}

grb.data()还会返回lat.lon信息哦~(顺序是先lat,后lon)

Python读取grb2资料_第2张图片

 

10. 该条变量的时间信息

grb.validDate

 

pygrib官网API,真心推荐,不错~

API — pygrib documentation

你可能感兴趣的:(java,开发语言)