我是python的新手,我正在尝试编写一个函数,该函数将从netcdf文件中获取一个numpy数组,维度为[时间、高度、经度、纬度],并将函数内插到指定的纬度和经度。我已经研究了 scipy.interpolate 但仍然不确定从那里去哪里。有什么帮助吗?
问问题
3819 次
2 回答
2
如果您希望(a)将整个数据集内插到一组新的纬度/经度坐标或(b)在单个纬度/经度位置获取值,我无法从这个问题中判断出来。
无论哪种方式,如果您不习惯在 python 中执行此操作,那么在气候数据运算符中使用 remapgrid 会容易得多(确保您安装了 netCDF 支持)。这确实需要 netCDF 文件遵循 CF-Conventions(请参阅这篇关于使您的 WRF 文件符合 CF 的帖子)。
remapgrid 的文档可在此处找到。有关网格选项的信息,请参见第 1.3 节(第 9-12 页),有关插值技术的信息,请参见第 2.10 节(从第 106 页开始)。如何重新映射有几个选项,您使用的命令取决于您的应用程序。
(a)这是一个使用双线性插值重新映射到高斯 (128x64) 网格的示例
cdo remapbil,n32 wrfout_d01_1999-01-01-01_00:00:00.nc out.nc
(b) 这是一个使用最近邻映射到一个纬度、经度点的重新映射示例:
cdo remapnn,lon=-107.0_lat=34.0 wrfout_d01_1999-01-01-01_00:00:00.nc out.nc
于 2015-05-21T16:10:56.030 回答