【问题标题】:Get all grid values on a diagonal line from point to point in xarray获取xarray中点到点对角线上的所有网格值
【发布时间】:2021-01-30 06:21:09
【问题描述】:

我希望从xarray 数据集中选择介于一个点和另一个点之间的所有数据。这当然很容易使用sel,例如使用基于纬度/经度网格的数据集从全球数据集到大西洋海岸线的子集我可以做ds_geo_subset = ds.sel( lat=slice(42, 20), lon=slice(-85,-65)),但我想选择墨西哥湾流前沿的所有数据,基本上从点(-78 lon,32 lat)到(-72 lon,36 lat),但我不知道该怎么做。最好是通过提供一个完整的点数据集并从每个点获取数据来完成,还是可以将这两个端点提供给 xarray 并返回插值数据?

【问题讨论】:

标签: python numpy python-xarray metpy


【解决方案1】:

正如上面的评论所建议的,Metpy 有一个特定的功能可以方便地完成这项任务。

from metpy.interpolate import cross_section

data = xr.open_dataset('my_data')

# Define start and end points:

start = (-78, 32)
end = (-72, 36)
cross = cross_section(data, start, end).set_coords(('lat', 'lon'))

Here 是绘制横截面的好例子。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-09
    • 1970-01-01
    • 2021-12-21
    • 2022-08-18
    • 1970-01-01
    • 2020-12-06
    • 2013-05-20
    • 1970-01-01
    相关资源
    最近更新 更多