我有30天的经度和纬度数组的浮标数据,但是我想找到浮标位置与每天0%海冰浓度之间的最接近距离。海冰浓度数据是一个 3D 矩阵,但空间维度以 x y 坐标为单位,而不是纬度和经度。 我已将所有高于 0% 的浓度转换为 Nan。我现在不确定如何定位海冰的最近纬度+经度点,以达到浮标轨迹上的每个点。
这是我的冰数据集:
尺寸:(时间:363,x:2528,y:2656(
坐标:
y(y( int16 1 2 3 4 5 6 ...2652 2653 2654 2655 2656
x(x( int16 1 2 3 4 5 6 ...2524 2525 2526 2527 2528
时间(时间( 日期时间64[ns] 2017-01-01T12:00:00 ...2017-12-30T12:00:00
longitude (time, y, x( float32 dask.array
latitude (time, y, x( float32 dask.array
数据变量:
sea_ice_concentration (time, y, x) float32 dask.array<shape=(363, 2656, 2528), chunksize=(1, 2656, 2528)>
land (time, y, x) int8 dask.array<shape=(363, 2656, 2528), chunksize=(1, 2656, 2528)>
你可以尝试使用Djikstras最短路径算法。该链接包含一个 python 示例,这可能是您的起点。
然后,您需要将结果(x,y 维度(转换为纬度/经度。