gwexpy.interop.xarray_

Functions

from_xarray(cls, da[, unit])

DataArray -> TimeSeries

from_xarray_field(cls, da, *[, axis0_dim, ...])

Convert an xarray.DataArray or Dataset to a ScalarField / VectorField.

to_xarray(ts[, time_coord])

TimeSeries -> xarray.DataArray

to_xarray_field(field, *[, dim_names])

Convert a ScalarField or VectorField to an xarray DataArray / Dataset.

gwexpy.interop.xarray_.to_xarray(ts: TimeSeries, time_coord: Literal['datetime', 'seconds', 'gps'] = 'datetime') xr.DataArray[source]

TimeSeries -> xarray.DataArray

gwexpy.interop.xarray_.from_xarray(cls: Type[T], da: xr.DataArray, unit: str | None = None) T[source]

DataArray -> TimeSeries

gwexpy.interop.xarray_.from_xarray_field(cls: type, da: Any, *, axis0_dim: str | None = None, spatial_dims: tuple[str, ...] | None = None, axis0_domain: Literal['time', 'frequency'] = 'time', space_domain: Literal['real', 'k'] = 'real') Any[source]

Convert an xarray.DataArray or Dataset to a ScalarField / VectorField.

Dimension auto-detection priority:

  1. CF Convention axis attribute (T / X / Y / Z)

  2. MetPy _metpy_axis attribute

  3. Heuristic name matching

Parameters:
  • cls (type) – ScalarField or VectorField.

  • da (xarray.DataArray or xarray.Dataset) – Input array. A Dataset is treated as a VectorField where each data variable becomes one component.

  • axis0_dim (str, optional) – Dimension name to use as axis0. Auto-detected when None.

  • spatial_dims (tuple of str, optional) – Ordered tuple (dim_x, dim_y, dim_z) for spatial axes. Auto-detected when None. Missing axes are filled with singleton dimensions.

  • axis0_domain ({"time", "frequency"}, default "time") – Physical domain of axis0.

  • space_domain ({"real", "k"}, default "real") – Spatial domain label for the resulting ScalarField.

Returns:

  • ScalarField – When da is a DataArray or cls is ScalarField.

  • VectorField – When da is a Dataset or cls is VectorField with a DataArray.

gwexpy.interop.xarray_.to_xarray_field(field: Any, *, dim_names: tuple[str, str, str, str] | None = None) Any[source]

Convert a ScalarField or VectorField to an xarray DataArray / Dataset.

Parameters:
  • field (ScalarField or VectorField) – Source field.

  • dim_names (tuple of 4 str, optional) – Dimension names (axis0, axis1, axis2, axis3). Defaults to field.axis_names when available, then to ("t", "x", "y", "z").

Returns:

  • xarray.DataArray – When field is a ScalarField.

  • xarray.Dataset – When field is a VectorField.