我有一个阵列,它有14000列和7000行美国地形数据,等距500米。我还有左下纬度和经度:
ncols = 14000
nrows = 7000
xllcorner = -130
yllcorner = 20
cellsize = 0.05
我还有另一个数据集(极地——>笛卡尔雷达数据(,它已经在投影坐标系中:
# radial data being converted to Cartesian
x = rangee * np.sin(np.deg2rad(az))[:,None]
y = rangee * np.cos(np.deg2rad(az))[:,None]
latitude = 35.9339
longitude = -80.0212
dataproj = Proj(f"+proj=stere +lat_0={latitude} +lat_ts={latitude} +lon_0={longitude} +ellps=WGS84 +units=m")
lons,lats = dataproj(x,y,inverse=True)
需要注意的是,地形数据覆盖了整个美国,而雷达数据位于北卡罗来纳州。因此,我有两个独立的网格数据集,我希望能够将地形数据与雷达数据尽可能匹配。换句话说,无论是通过插值和/或其他方法,雷达数据的每个[x,y]位置都应该有一个地形值。
怎样才能做到这一点?
我建议使用rioxarray。它有一种称为reproject_match的方法来使两个网格对齐:
https://corteva.github.io/rioxarray/stable/examples/reproject_match.html