Source code for xarray_cube.converter

import spectral_cube as sc
import xarray as xr
from astropy.io import fits

from .cube import Cube


[docs]def spectralcube2xarray(cube: sc.SpectralCube) -> xr.DataArray: """Convert a SpectralCube to a DataArray object.""" return Cube.new( data=cube.hdu.data, header=cube.hdu.header.tostring(), )
[docs]def xarray2spectralcube(da: xr.DataArray) -> sc.SpectralCube: """Convert a DataArray object to a SpectralCube.""" header = fits.Header.fromstring(da.header.item()) data = da.values return sc.SpectralCube.read(fits.ImageHDU(data, header))