SkyCoordTableCoordinate#
- class ndcube.extra_coords.SkyCoordTableCoordinate(*tables, mesh=False, names=None, physical_types=None)[source]#
Bases:
BaseTableCoordinate
A lookup table created from a
SkyCoord
.- Parameters:
table (
SkyCoord
) – SkyCoord of coordinates. Only one can be provided.mesh (
bool
) – If True, world components of input SkyCoord are interpreted to represent different array dimensions. Input SkyCoord must be 1-D.names (
str
orlist
ofstr
) – Custom names for the components of the SkyCoord. If provided, a name must be given for each component.physical_types (str` or
list
ofstr
) – Physical types of the components of the SkyCoord. If provided, a physical type must be given for each component.
Notes
If mesh is True, underlying SkyCoord must always be “square” due to nature of
SkyCoord
, i.e. the lat and lon components are always the same length.Attributes Summary
Generate the Frame for this LookupTable.
Generate the Astropy Model for this LookupTable.
Number of pixel dimensions in this table.
Number of array dimensions to which this TableCoordinate corresponds.
Shape of the array grid to which this TableCoordinate corresponds.
Methods Summary
combine_slices
(slice1, slice2)interpolate
(*new_array_grids[, mesh_output])Interpolate SkyCoordTableCoordinate to new array index grids.
Return a boolean if this coordinate is a scalar.
Attributes Documentation
- frame#
Generate the Frame for this LookupTable.
- model#
Generate the Astropy Model for this LookupTable.
- n_inputs#
- ndim#
Number of array dimensions to which this TableCoordinate corresponds.
Note that if mesh is False, this is equivalent to the number of dimensions in the underlying SkyCoord. However, if mesh is True it is equivalent to the number of components, e.g. lon, lat, etc.
- shape#
Shape of the array grid to which this TableCoordinate corresponds.
Note this may be different from the shape of the underlying SkyCoord if mesh is True. In this case the components (e.g. lon, lat) represent different dimensions and the length of each dimension is dictated by the attached _slice.
Methods Documentation
- interpolate(*new_array_grids, mesh_output=None, **kwargs)[source]#
Interpolate SkyCoordTableCoordinate to new array index grids.
- Parameters:
new_array_grids (array-like) – The array index values at which the new values of the coords are desired. An array grid must be provided as a separate arg for each array dimension and corresponding elements in all arrays represent a single location in the pixel grid. Therefore, array grids must all have the same shape.
mesh_output (
bool
) – If new_array_grids are 1-D, this keyword sets whether the resulting SkyCoordTableCoordinate’s mesh setting is True or False. If new_array_grids are >1-D, mesh is always set to False. Default is to maintain mesh setting from pre-interpolated object.kwargs – All remaining kwargs are passed to underlying interpolation function.
- Returns:
new_coord (
SkyCoordTableCoordinate
) – New TableCoordinate object holding the interpolated coords.
- is_scalar()[source]#
Return a boolean if this coordinate is a scalar.
This is used by
MultipleTableCoordinate
andndcube.ExtraCoords
to know if the dimension has been “dropped”.