LazyComparisonMask

class spectral_cube.masks.LazyComparisonMask(function, comparison_value, cube=None, data=None, wcs=None)[source]

Bases: LazyMask

A boolean mask defined by the evaluation of a comparison function between a fixed dataset and some other value.

This is conceptually similar to the LazyMask but it will ensure that the comparison value can be compared to the data

Parameters:
functioncallable

The function to apply to data. This method should accept a numpy array, which will be the data array passed to __init__, and a second argument also passed to __init__. It should return a boolean array, where True values indicate that which pixels are valid/unaffected by masking.

comparison_valuefloat or array

The comparison value for the array

dataarray-like

The array to evaluate function on. This should support Numpy-like slicing syntax.

wcsWCS

The WCS of the input data, which is used to define the coordinates for which the boolean mask is defined.

Attributes Summary

dtype

ndim

shape

size

Methods Summary

any()

exclude([data, wcs, view])

Return a boolean array indicating which values should be excluded.

include([data, wcs, view])

Return a boolean array indicating which values should be included.

quicklook(view[, wcs, filename, use_aplpy, ...])

View a 2D slice of the mask, specified by view.

view([view])

Compatibility tool: if a numpy.ma.ufunc is run on the mask, it will try to grab a view of the mask, which needs to appear to numpy as a true array.

with_spectral_unit(unit[, ...])

Get a LazyComparisonMask copy with a WCS in the modified unit

Attributes Documentation

dtype
ndim
shape
size

Methods Documentation

any()
exclude(data=None, wcs=None, view=(), **kwargs)

Return a boolean array indicating which values should be excluded.

If view is passed, only the sliced mask will be returned, which avoids having to load the whole mask in memory. Otherwise, the whole mask is returned in-memory.

kwargs are passed to _validate_wcs

include(data=None, wcs=None, view=(), **kwargs)

Return a boolean array indicating which values should be included.

If view is passed, only the sliced mask will be returned, which avoids having to load the whole mask in memory. Otherwise, the whole mask is returned in-memory.

kwargs are passed to _validate_wcs

quicklook(view, wcs=None, filename=None, use_aplpy=True, aplpy_kwargs={})

View a 2D slice of the mask, specified by view.

Parameters:
viewtuple

Slicing to apply to the mask. Must return a 2D slice.

wcsastropy.wcs.WCS, optional

WCS object to use in plotting the mask slice.

filenamestr, optional

Filename of the output image. Enables saving of the plot.

use_aplpybool, optional

Try plotting with the aplpy package

aplpy_kwargsdict, optional

kwargs passed to FITSFigure.

view(view=())

Compatibility tool: if a numpy.ma.ufunc is run on the mask, it will try to grab a view of the mask, which needs to appear to numpy as a true array. This can be important for, e.g., plotting.

Numpy’s convention is that masked=True means “masked out”

Note

I don’t know if there are broader concerns or consequences from including this ‘view’ tool here.

with_spectral_unit(unit, velocity_convention=None, rest_value=None)[source]

Get a LazyComparisonMask copy with a WCS in the modified unit