使用插值法重新网格化纬度和经度

3

我该如何重新调整一个使用两个独立的2D数组来表示纬度和经度的天气地图,以生成如下所示的地图:

weather_map

将原有的网格转换为由两个1D数组组成的新网格,用于纬度和经度的参考。

(这些是新的纬度和经度的参考)

new_lats = np.linspace(-34, -48, 14*4+1), new_lons = np.linspace(166, 182, 16*4+1)

我已经研究了scipy.interpolate.interp2d,但无法让它正常工作,而且处理时间非常长。

(更新:我已经研究了xESMF,然而,当使用它的Regridder函数时,我会遇到这个错误ImportError: Regrid(filename) requires PIO and does not work if ESMF has not been built with MPI support)


在numpy/scipy中,您可以使用griddata处理不规则/非结构化数据,使用map_coordinates处理规则/结构化数据。从您的帖子中,很难理解您的输入是什么样子,输出应该是什么样子。请查看插值教程 - bfris
1
谢谢你的回复,我认为我刚刚通过使用xESMF找到了一个解决方案。 - William Herewini
1个回答

3

经过进一步研究xESMF并阅读各种论坛,我发现最新版本的xESMF存在一些依赖问题,因此$ conda install -c conda-forge esmpy==7.1.0成功地解决了我的问题,然后使用regridder函数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接