IRISMapCubeSequence

class irispy.sji.IRISMapCubeSequence(data_list, meta=None, common_axis=0)[source] [edit on github]

Bases: ndcube.ndcube_sequence.NDCubeSequence

Class for holding, slicing and plotting IRIS SJI data.

This class contains all the functionality of its super class with some additional functionalities.

Parameters:
  • data_list (list) – List of IRISMapCube objects from the same OBS ID. Each cube must contain the same ‘detector type’ in its meta attribute.
  • meta (dict or header object) – Metadata associated with the sequence.
  • common_axis (int) – The axis of the NDCubes corresponding to time.

Attributes Summary

dimensions
world_axis_physical_types

Methods Summary

apply_dust_mask([undo]) Applies or undoes an update of all the masks with the dust particles positions.
apply_exposure_time_correction([undo, copy, …]) Applies or undoes exposure time correction to data and uncertainty and adjusts unit.
plot([axes, plot_axis_indices, …]) Visualizes data in the IRISMapCubeSequence with the sequence axis folded into the common axis.

Attributes Documentation

dimensions
world_axis_physical_types

Methods Documentation

apply_dust_mask(undo=False)[source] [edit on github]

Applies or undoes an update of all the masks with the dust particles positions.

Parameters:undo (bool) – If False, dust particles positions masks will be applied. If True, dust particles positions masks will be removed. Default=False
Returns:Rewrite all self.data[i] mask with/without the dust positions.
Return type:result
apply_exposure_time_correction(undo=False, copy=False, force=False)[source] [edit on github]

Applies or undoes exposure time correction to data and uncertainty and adjusts unit.

Correction is only applied (undone) if the object’s unit doesn’t (does) already include inverse time. This can be overridden so that correction is applied (undone) regardless of unit by setting force=True.

Parameters:
  • undo (bool) – If False, exposure time correction is applied. If True, exposure time correction is removed. Default=False
  • copy (bool) – If True a new instance with the converted data values is returned. If False, the current instance is overwritten. Default=False
  • force (bool) – If not True, applies (undoes) exposure time correction only if unit doesn’t (does) already include inverse time. If True, correction is applied (undone) regardless of unit. Unit is still adjusted accordingly.
Returns:

result – If copy=False, the original IRISMapCubeSequence is modified with the exposure time correction applied (undone). If copy=True, a new IRISMapCubeSequence is returned with the correction applied (undone).

Return type:

IRISMapCubeSequence

plot(axes=None, plot_axis_indices=None, axes_coordinates=None, axes_units=None, data_unit=None, **kwargs)[source] [edit on github]

Visualizes data in the IRISMapCubeSequence with the sequence axis folded into the common axis.

Based on the cube-like dimensionality of the sequence and value of plot_axis_indices kwarg, a Line/Image Plot/Animation is produced.

Parameters:
  • axes (astropy.visualization.wcsaxes.core.WCSAxes or ??? or None.) – The axes to plot onto. If None the current axes will be used.
  • plot_axis_indices (int or iterable of one or two int.) – If two axis indices are given, the sequence is visualized as an image or 2D animation, assuming the sequence has at least 2 cube-like dimensions. The cube-like dimension indicated by the 0th element of plot_axis indices is displayed on the x-axis while the cube-like dimension indicated by the 1st element of plot_axis_indices is displayed on the y-axis. If only one axis index is given (either as an int or a list of one int), then a 1D line animation is produced with the indicated cube-like dimension on the x-axis and other cube-like dimensions represented by animations sliders. Default=[-1, -2]. If sequence only has one cube-like dimension, plot_axis_indices is ignored and a static 1D line plot is produced.
  • axes_coordinates (None or list of None astropy.units.Quantity numpy.ndarray str) – Denotes physical coordinates for plot and slider axes. If None coordinates derived from the WCS objects will be used for all axes. If a list, its length should equal either the number cube-like dimensions or the length of plot_axis_indices. If the length equals the number of cube-like dimensions, each element describes the coordinates of the corresponding cube-like dimension. If the length equals the length of plot_axis_indices, the 0th entry describes the coordinates of the x-axis while (if length is 2) the 1st entry describes the coordinates of the y-axis. Slider axes are implicitly set to None. If the number of cube-like dimensions equals the length of plot_axis_indices, the latter convention takes precedence. The value of each entry should be either None (implies derive the coordinates from the WCS objects), an astropy.units.Quantity or a numpy.ndarray of coordinates for each pixel, or a str denoting a valid extra coordinate.
  • axes_units (None or `list of None, astropy.units.Unit and/or str) – If None units derived from the WCS objects will be used for all axes. If a list, its length should equal either the number cube-like dimensions or the length of plot_axis_indices. If the length equals the number of cube-like dimensions, each element gives the unit in which the coordinates along the corresponding cube-like dimension should displayed whether they be a plot axes or a slider axes. If the length equals the length of plot_axis_indices, the 0th entry describes the unit in which the x-axis coordinates should be displayed while (if length is 2) the 1st entry describes the unit in which the y-axis should be displayed. Slider axes are implicitly set to None. If the number of cube-like dimensions equals the length of plot_axis_indices, the latter convention takes precedence. The value of each entry should be either None (implies derive the unit from the WCS object of the 0th sub-cube), astropy.units.Unit or a valid unit str.
  • data_unit (astropy.unit.Unit or valid unit str or None) – Unit in which data be displayed. If the length of plot_axis_indices is 2, a 2D image/animation is produced and data_unit determines the unit represented by the color table. If the length of plot_axis_indices is 1, a 1D plot/animation is produced and data_unit determines the unit in which the y-axis is displayed.
Returns:

return

Return type:

ndcube.mixins.sequence_plotting.plot_as_cube