如何在xarray中创建有角度的netcdf数据切片?可以说我有一个在100x100x100的网格上具有垂直风速的netcdf文件。如果我想要该数据的垂直横截面,其水平范围开始于[x,y] = [5,0]并结束于[95,100],该怎么办。在xarray中有一种简单的方法可以定义枢轴点和角度吗?
答案 0 :(得分:0)
当尝试沿着与尺寸不对齐的路线查找高程轮廓时,我遇到了类似的问题。如果您创建一个新维度“ along_course”并向其添加相应的坐标,则可以沿自定义维度进行插值。对于您的额外海拔高度坐标,我想像一下,如果您使用meshgrid来定义x,y,z的坐标,那么可能会成功。
这是我对2D情况所做的事情,您应该能够为3D情况进行修改: http://xarray.pydata.org/en/stable/interpolation.html#advanced-interpolation
startLat = 40.0
startLon = -80.0
endLat = 41.0
endLon = -79.0
n = 1000
x = xr.DataArray(np.linspace(startLon,endLon,n), dims='along_course')
y = xr.DataArray(np.linspace(startLat,endLat,n), dims='along_course')
elevation_profile = dataset['elevation'].interp(Lon=x, Lat=y, method='linear')
plt.plot(elevation_profile)