Slice

class kgpy.obs.spectral.Slice(intensity=None, intensity_uncertainty=None, wcs=None, time=None, time_index=None, channel=None, exposure_length=None)

Bases: Image

Represents of sequence of images with one spectral axis and one spatial axis. This is the type of data that is natively gathered by slit imaging spectrographs such as IRIS.

Parameters:
__init__(intensity=None, intensity_uncertainty=None, wcs=None, time=None, time_index=None, channel=None, exposure_length=None)
Parameters:
Return type:

None

Attributes

axis

Relationship between physical dimension and axis index.

channel

channel_labels

exposure_half_length

exposure_length

intensity

Intensity of each pixel in the data

intensity_uncertainty

num_channels

num_times

num_x

num_y

shape

time

time_exp_end

time_exp_start

time_index

wcs

Methods

__init__([intensity, intensity_uncertainty, ...])

add_index_axis_to_shared_time_axes(axs)

rtype:

typing.Sequence[matplotlib.axes._axes.Axes]

add_index_axis_to_time_axis(ax)

rtype:

matplotlib.axes._axes.Axes

animate(data[, time_slice, axs, thresh_min, ...])

rtype:

matplotlib.animation.FuncAnimation

animate_channel(images, image_names[, ax, ...])

animate_intensity([axs, thresh_min, ...])

rtype:

matplotlib.animation.FuncAnimation

animate_intensity_channel([ax, time_slice, ...])

rtype:

matplotlib.animation.FuncAnimation

from_pickle([path])

plot_channel(image[, image_name, ax, ...])

rtype:

matplotlib.axes._axes.Axes

plot_channel_from_data(data[, ax, ...])

rtype:

matplotlib.axes._axes.Axes

plot_exposure_length(ax)

rtype:

typing.Tuple[matplotlib.axes._axes.Axes, typing.List[matplotlib.lines.Line2D]]

plot_intensity_channel([ax, time_index, ...])

rtype:

matplotlib.axes._axes.Axes

plot_intensity_mean_vs_time(ax)

rtype:

typing.Tuple[matplotlib.axes._axes.Axes, typing.List[matplotlib.lines.Line2D]]

plot_intensity_time([axs, time_index, ...])

rtype:

numpy.ndarray

plot_quantity_vs_index(ax, a[, t, a_name])

rtype:

typing.Tuple[matplotlib.axes._axes.Axes, typing.List[matplotlib.lines.Line2D]]

plot_time(images, image_names, axs[, ...])

rtype:

numpy.ndarray

plot_time_from_data(data[, axs, time_index, ...])

rtype:

numpy.ndarray

to_pickle(path)

zeros(shape)

rtype:

kgpy.obs.Image

Inheritance Diagram

digraph inheritancef470ff816f { bgcolor=transparent; rankdir=TB; size="8.0, 12.0"; "abc.ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "kgpy.mixin.Pickleable" [URL="kgpy.mixin.Pickleable.html#kgpy.mixin.Pickleable",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Class for adding 'to_pickle' and 'from_pickle' methods for objects with long creation times."]; "abc.ABC" -> "kgpy.mixin.Pickleable" [arrowsize=0.5,style="setlinewidth(0.5)"]; "kgpy.obs.Image" [URL="kgpy.obs.Image.html#kgpy.obs.Image",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Image(intensity: Optional[astropy.units.quantity.Quantity] = None, intensity_uncertainty: Optional[astropy.units.quantity.Quantity] = None, wcs: Optional[numpy.ndarray] = None, time: Optional[astropy.time.core.Time] = None, time_index: Optional[numpy.ndarray] = None, channel: Optional[astropy.units.quantity.Quantity] = None, exposure_length: Optional[astropy.units.quantity.Quantity] = None)"]; "kgpy.mixin.Pickleable" -> "kgpy.obs.Image" [arrowsize=0.5,style="setlinewidth(0.5)"]; "kgpy.obs.spectral.Slice" [URL="kgpy.obs.spectral.Slice.html#kgpy.obs.spectral.Slice",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Represents of sequence of images with one spectral axis and one spatial axis."]; "kgpy.obs.Image" -> "kgpy.obs.spectral.Slice" [arrowsize=0.5,style="setlinewidth(0.5)"]; }
add_index_axis_to_shared_time_axes(axs)
Return type:

typing.Sequence[matplotlib.axes._axes.Axes]

Parameters:

axs (Sequence[Axes]) –

add_index_axis_to_time_axis(ax)
Return type:

matplotlib.axes._axes.Axes

Parameters:

ax (Axes) –

animate(data, time_slice=slice(None, None, None), axs=None, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>, norm_gamma=1, frame_interval=<Quantity 100. ms>)
Return type:

matplotlib.animation.FuncAnimation

Parameters:
animate_channel(images, image_names, ax=None, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>, norm_gamma=1, norm_vmin=None, norm_vmax=None, frame_interval=<Quantity 1. s>, colormap=None)
Parameters:
animate_intensity(axs=None, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>, norm_gamma=1, frame_interval=<Quantity 100. ms>)
Return type:

matplotlib.animation.FuncAnimation

Parameters:
animate_intensity_channel(ax=None, time_slice=None, channel_index=0, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>, norm_gamma=1, norm_vmin=None, norm_vmax=None, frame_interval=<Quantity 100. ms>, colormap=None)
Return type:

matplotlib.animation.FuncAnimation

Parameters:
classmethod from_pickle(path=None)
Parameters:

path (Path | None) –

plot_channel(image, image_name='', ax=None, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>, colorbar_location='right', transpose=False)
Return type:

matplotlib.axes._axes.Axes

Parameters:
plot_channel_from_data(data, ax=None, time_index=0, channel_index=0, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>)
Return type:

matplotlib.axes._axes.Axes

Parameters:
plot_exposure_length(ax)
Return type:

typing.Tuple[matplotlib.axes._axes.Axes, typing.List[matplotlib.lines.Line2D]]

Parameters:

ax (Axes) –

plot_intensity_channel(ax=None, time_index=0, channel_index=0, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>)
Return type:

matplotlib.axes._axes.Axes

Parameters:
plot_intensity_mean_vs_time(ax)
Return type:

typing.Tuple[matplotlib.axes._axes.Axes, typing.List[matplotlib.lines.Line2D]]

Parameters:

ax (Axes) –

plot_intensity_time(axs=None, time_index=0, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>)
Return type:

numpy.ndarray

Parameters:
plot_quantity_vs_index(ax, a, t=None, a_name='')
Return type:

typing.Tuple[matplotlib.axes._axes.Axes, typing.List[matplotlib.lines.Line2D]]

Parameters:
plot_time(images, image_names, axs, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>)
Return type:

numpy.ndarray

Parameters:
plot_time_from_data(data, axs=None, time_index=0, thresh_min=<Quantity 0.01 %>, thresh_max=<Quantity 99.9 %>)
Return type:

numpy.ndarray

Parameters:
to_pickle(path)
Parameters:

path (Path | None) –

classmethod zeros(shape)
Return type:

kgpy.obs.Image

Parameters:

shape (Sequence[int]) –

axis: typing.ClassVar[kgpy.obs.spectral.SliceAxis] = <kgpy.obs.spectral.SliceAxis object>

Relationship between physical dimension and axis index.

channel: typ.Optional[u.Quantity] = None
property channel_labels: List[str]
property exposure_half_length
exposure_length: typ.Optional[u.Quantity] = None
intensity: typ.Optional[u.Quantity] = None

Intensity of each pixel in the data

intensity_uncertainty: typ.Optional[u.Quantity] = None
property num_channels: int
property num_times: int
property num_x: int
property num_y: int
property shape: Tuple[int, ...]
time: typ.Optional[astropy.time.Time] = None
property time_exp_end: Time
property time_exp_start: Time
time_index: typ.Optional[np.ndarray] = None
wcs: typ.Optional[np.ndarray] = None