获得给定边界的grib值的替代(更快)方法



我已经使用pygrib来提取给定边界内特定波段的所有grib值。函数将返回一个Json对象,该对象包含每个分析数据的所有值。

现在我每次跑步都要阅读大约73个grib,反应很慢,现在大约是3分钟。

结果应该是:网格结果

你知道使用GDAL或ECCODES等其他工具在邮箱中提取数据的另一种方法吗?

我不能使用grid2json,因为它不能识别GRIB。

提前感谢

您看过cfgrib吗。它是xarray的grid引擎。使用xarray,您将拥有大量用于grib数据集的服务和应用程序。xarray遵循数据立方体原理。

例如,如果你已经将数据加载到xarray.Dataset中,你可以使用where函数将数据切片到你的bbox:

import xarray
dataset = xarray.open_dataset('path to grib file', engine='cfgrib')
# or for multiple files 
dataset = xarray.open_dataset(['path_to_grib1', 'path_to_grib2', ...], engine='cfgrib')
dataset.where((dataset.latitude > min_lat) & 
(dataset.latitude < max_lat) & 
(dataset.longitude > min_lon) &
(dataset.longitude < max_lon), drop=True)

相关内容

  • 没有找到相关文章

最新更新