如何处理xarray中与时间有关的坐标?

巴赫博尔德

我想使用xarray处理具有时间相关坐标的数据集。更准确地说,我处理以风暴为中心的预测,这导致维度(时间,纬度,经度)发生变化,但是纬度,经度是风暴移动时时间的函数。

似乎xarray中没有本机处理这种情况的方法,但是可能的解决方法是什么?独立地存储每个时间步很麻烦,但是,使用xr.concat始终导致一个纬度,经度坐标...我想知道应用time1.interp_like(time2)是否会有所帮助。从本质上讲,随着时间的推移,用nan填充所有时间步长,直到lat,lon随着时间的最大延长。

瑞安

如果您的目标是绘图,则可以使用非三维坐标来解决此问题

考虑以下玩具示例。这里ji是“逻辑”尺寸,其不对应于任何物理位置(只是数组索引),而lonlat是与时间相关的地理坐标。

import xarray as xr
import numpy as np

# create a dummy dataset
ds = xr.Dataset({'foo': (('time', 'j', 'i'), np.random.rand(10, 30, 30))})

# add non-dimension coordinates that depend on time
ds.coords['lon'] = 190 + 0.25 * ds.i + 0.01 * ds.time
ds.coords['lat'] = 24 + 0.25 * ds.j + 0.02 * ds.time
print(ds)

# select a specific time and plot
ds.foo.sel(time=5).plot(x='lon', y='lat')

数据集代表是

<xarray.Dataset>
Dimensions:  (i: 30, j: 30, time: 10)
Coordinates:
    lon      (i, time) float64 190.0 190.0 190.0 190.0 ... 197.3 197.3 197.3
    lat      (j, time) float64 24.0 24.02 24.04 24.06 ... 31.39 31.41 31.43
Dimensions without coordinates: i, j, time
Data variables:
    foo      (time, j, i) float64 0.7443 0.2943 0.4479 ... 0.5386 0.3574 0.5597

该图如下所示:

情节的输出

您可以将这种方法适应您描述的场景

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

征求有关如何处理申请的建议

如何处理WWDC 2014中有关Swift代码的一行错误

如何从坐标中获取有关位置或状态的信息

如何处理字符串中的自定义标签并记录有关格式的信息

需要有关此代码如何处理Arraylist值的说明

KStreams-如何处理有关一个主题的消息延迟

cv2.fitEllipse如何处理与旋转有关的宽度/高度?

如何处理有关使用泛型的接口实现的这种情况?

terraform如何处理有关分区的AWS Elastic Block Store(EBS)的安装?

如何处理仅将要填写的有关必填字段的TS错误?

如何处理来自核心准则检查器的有关gsl :: at的静态分析警告?

有关Ctypes(以及潜在的python实现)如何处理数据类型的问题?

GNU分手:如何处理有关正确分配分区的错误

如何播放与时间有关的事件

ODE中与时间有关的事件

如何在Google Maps API iOS中获取有关点的坐标?

如何处理坐标碰撞?(在python中)

什么是android ContentObserver,如何处理示例我的意思是有关ContentObserver的完整教程“基础”。请帮我

有关如何处理实时提要的建议,其中包含来自mysql数据库的数据

如何在XArray中识别时间,经度和纬度坐标?

与时间有关的计算

有关如何在git中处理未完成的用户故事的分支的建议

需要有关如何在PostgresSQL中处理大表的建议

如何使用C#8.0中的nullable选项处理有关泛型的问题?

如何在C中删除有关文件处理的数据?

有关如何存储和处理多维数据的建议?

C#中与时间有关的着色

有关istream中错误处理的问题

需要有关使用Django / DRF时如何处理和/或避免循环导入的体系结构建议