在每个经纬度点执行计算

Perform a calculation at every latitude-longitude point

我有一个 xarray 数据数组 mx2t,其中包含一个区域的每小时温度。我想做的是在每个经纬度点的数据中找到最高温度,然后将其绘制在地图上。

运行 mx2t.max() 会给我整个数组中的最大值,但是如何获取每个经纬度点的最大值呢?

这是我的坐标在数据数组中的样子:

参见xarary docs on aggregation

DataArray.max API 接受一个 dim 参数,它的行为类似于 numpy 的 axis 参数(除了它接受维度名称而不是位置索引):

mx2t.max(dim='time')

将取时间维度上的最大值,返回一个 (latitude, longitude) 具有逐点最大值的 DataArray。

您还可以为任何聚合函数提供多个维度;在您的示例中,创建经纬度最大值的时间序列:

mx2t.max(dim=('latitude', 'longitude'))