Exporting Data from Cubeviz#
After data have been manipulated or analyzed, it is possible to export those data currently back into your Jupyter notebook.
Spatial Regions#
See also
- Export Spatial Regions
Documentation on how to export spatial regions.
Since Specviz can be accessed from Cubeviz, the following line of code can be used to extract the spectrum of a spatial subset named “Subset 1”:
subset1_spec1d = cubeviz.specviz.get_spectra(spectral_subset="Subset 1")
An example without accessing Specviz:
subset1_spec1d = cubeviz.get_data(data_label=flux_data_label,
spatial_subset="Subset 1",
function="mean")
Note that in the above example, the function
keyword is used to tell Cubeviz
how to collapse the flux cube down to a one dimensional spectrum - this is not
necessarily equivalent to the collapsed spectrum in the spectrum viewer, which
may have used a different collapse function.
To get all subsets from the spectrum viewer:
subset1_spec1d = cubeviz.specviz.app.get_subsets()
To access the spatial regions themselves:
regions = cubeviz.get_interactive_regions()
regions
1D Spectra and Spectral Regions#
See also
- Export Spectra
Documentation on how to export data from the
spectrum-viewer
.
The following line of code can be used to extract a spectral subset named “Subset 2”:
subset2_spec1d = cubeviz.specviz.get_spectra("Subset 2")
3D Data Cubes#
To extract the entire cube, you can run the following code (replace “data_name” with the name of the data you want to extract):
mydata = cubeviz.get_data(data_label="data_name")
The data is returned as a 3D specutils.Spectrum1D
object.
To write out a specutils.Spectrum1D
cube from Cubeviz
(e.g., a fitted cube from Model Fitting),
where the mask (if available) is as defined in
Spectrum1D masks:
mydata.write("mydata.fits", format="jdaviz-cube")
Data can also be accessed directly from data_collection
using the following code:
cubeviz.app.data_collection[0]
Which is returned as a Data
object. The
DataCollection
object
can be indexed to return all available data (i.e., not just using 0 like in the
previous example).
Model Fits#
For a list of model labels:
models = cubeviz.get_models()
models
Once you know the model labels, to get a specific model:
mymodel = cubeviz.get_models(model_label="ModelLabel", x=10)
To extract all of the model parameters:
myparams = cubeviz.get_model_parameters(model_label="ModelLabel", x=x, y=y)
myparams
where the model_label
parameter identifies which model should be returned and
the x
and y
parameters identify specifically which spaxel fits are to be returned,
for models applied to every spaxel using the Apply to Cube button.
Leaving x
or y
as None
will mean that the models fit to every spaxel
across that axis will be returned.
Markers Table#
All mouseover information in the markers plugin can be exported to an
astropy table
by calling export_table()
(see Accessing Plugin APIs).
Aperture Photometry#
Cubeviz can export photometry output table like Imviz:
results = cubeviz.get_aperture_photometry_results()
See also
- Imviz Aperture Photometry
Imviz documentation describing exporting of aperture photometry results in Jdaviz.
In addition to the columns that Imviz Aperture Photometry
would provide, the table from Cubeviz has this extra column after data_label
:
slice_wave
: Wavelength value at the selected slice of the cube used for computation. If a 2D data (e.g., collapsed cube) is selected, the value would be NaN instead.