colors
: Colors and colormap¶
This module provides API to manage colors.
- DEFAULT_MIN_LIN = 0¶
Default min value if in linear normalization
- DEFAULT_MAX_LIN = 1¶
Default max value if in linear normalization
- rgba(color: str | Sequence[Real] | QColor, colorDict: dict[str, str] | None = None, colors: Sequence[str] | None = None) Tuple[float, float, float, float] [source]¶
Convert different kind of color definition to a tuple (R, G, B, A) of floats.
It supports: - color names: e.g., ‘green’ - color codes: ‘#RRGGBB’ and ‘#RRGGBBAA’ - indexed color names: e.g., ‘C0’ - RGB(A) sequence of uint8 in [0, 255] or float in [0, 1] - QColor
- Parameters:
color – The color to convert
colorDict – A dictionary of color name conversion to color code
colors – Sequence of colors to use for `
- Returns:
RGBA colors as floats in [0., 1.]
- Raises:
ValueError – if the input is not a valid color
- greyed(color: str | Sequence[Real] | QColor, colorDict: dict[str, str] | None = None) Tuple[float, float, float, float] [source]¶
Convert color code ‘#RRGGBB’ and ‘#RRGGBBAA’ to a grey color (R, G, B, A).
It also supports RGB(A) from uint8 in [0, 255], float in [0, 1], and QColor as color argument.
- Parameters:
color – The color to convert
colorDict – A dictionary of color name conversion to color code
- Returns:
RGBA colors as floats in [0., 1.]
- asQColor(color: str | Sequence[Real] | QColor) QColor [source]¶
Convert color code ‘#RRGGBB’ and ‘#RRGGBBAA’ to a qt.QColor.
It also supports RGB(A) from uint8 in [0, 255], float in [0, 1], and QColor as color argument.
- Parameters:
color – The color to convert
- cursorColorForColormap(colormapName: str) str [source]¶
Get a color suitable for overlay over a colormap.
- Parameters:
colormapName – The name of the colormap.
- Returns:
Name of the color.
- class Colormap(name: str | None = None, colors: ndarray | None = None, normalization: str = 'linear', vmin: float | None = None, vmax: float | None = None, autoscaleMode: str = 'minmax')[source]¶
Description of a colormap
If no name nor colors are provided, a default gray LUT is used.
- Parameters:
name – Name of the colormap
colors – optional, custom colormap. Nx3 or Nx4 numpy array of RGB(A) colors, either uint8 or float in [0, 1]. If ‘name’ is None, then this array is used as the colormap.
normalization – Normalization: ‘linear’ (default) or ‘log’
vmin – Lower bound of the colormap or None for autoscale (default)
vmax – Upper bounds of the colormap or None for autoscale (default)
- LINEAR = 'linear'¶
constant for linear normalization
- LOGARITHM = 'log'¶
constant for logarithmic normalization
- SQRT = 'sqrt'¶
constant for square root normalization
- GAMMA = 'gamma'¶
Constant for gamma correction normalization
- ARCSINH = 'arcsinh'¶
constant for inverse hyperbolic sine normalization
- NORMALIZATIONS = ('linear', 'log', 'sqrt', 'gamma', 'arcsinh')¶
Tuple of managed normalizations
- MINMAX = 'minmax'¶
constant for autoscale using min/max data range
- STDDEV3 = 'stddev3'¶
constant for autoscale using mean +/- 3*std(data) with a clamp on min/max of the data
- AUTOSCALE_MODES = ('minmax', 'stddev3')¶
Tuple of managed auto scale algorithms
- sigChanged¶
Signal emitted when the colormap has changed.
- setFromColormap(other: Colormap)[source]¶
Set this colormap using information from the other colormap.
- Parameters:
other – Colormap to use as reference.
- getNColors(nbColors: int | None = None) ndarray [source]¶
Returns N colors computed by sampling the colormap regularly.
- Parameters:
nbColors – The number of colors in the returned array or None for the default value. The default value is the size of the colormap LUT.
- Returns:
2D array of uint8 of shape (nbColors, 4)
- setName(name: str)[source]¶
Set the name of the colormap to use.
- Parameters:
name – The name of the colormap. At least the following names are supported: ‘gray’, ‘reversed gray’, ‘temperature’, ‘red’, ‘green’, ‘blue’, ‘jet’, ‘viridis’, ‘magma’, ‘inferno’, ‘plasma’.
- getColormapLUT(copy: bool = True) ndarray | None [source]¶
Return the list of colors for the colormap or None if not set.
This returns None if the colormap was set with
setName()
. UsegetNColors()
to get the colormap LUT for any colormap.- Parameters:
copy – If true a copy of the numpy array is provided
- Returns:
the list of colors for the colormap or None if not set
- setColormapLUT(colors: ndarray)[source]¶
Set the colors of the colormap.
- Parameters:
colors – the colors of the LUT. If float, it is converted from [0, 1] to uint8 range. Otherwise it is casted to uint8.
- setNaNColor(color: str | Sequence[Real] | QColor)[source]¶
Set the color to use for Not-A-Number floating point value.
- Parameters:
color – RGB(A) color to use for NaN values
- getNormalization() str [source]¶
Return the normalization of the colormap.
See
setNormalization()
for returned values.- Returns:
the normalization of the colormap
- setNormalization(norm: str)[source]¶
Set the colormap normalization.
Accepted normalizations: ‘log’, ‘linear’, ‘sqrt’
- Parameters:
norm – the norm to set
- setGammaNormalizationParameter(gamma: float)[source]¶
Set the gamma correction parameter.
Only used for gamma correction normalization.
- Raises:
ValueError – If gamma is not valid
- setAutoscaleMode(mode: str)[source]¶
Set the autoscale mode: either ‘minmax’ or ‘stddev3’
- Parameters:
mode – the mode to set
- getVMin() float | None [source]¶
Return the lower bound of the colormap
- Returns:
the lower bound of the colormap
- setVMin(vmin: float | None)[source]¶
Set the minimal value of the colormap
- Parameters:
vmin – Lower bound of the colormap or None for autoscale (initial value)
- getVMax() float | None [source]¶
Return the upper bounds of the colormap or None
- Returns:
the upper bounds of the colormap or None
- setVMax(vmax: float | None)[source]¶
Set the maximal value of the colormap
- Parameters:
vmax – Upper bounds of the colormap or None for autoscale (initial value)
- isEditable() bool [source]¶
Return if the colormap is editable or not
- Returns:
editable state of the colormap
- setEditable(editable: bool)[source]¶
Set the editable state of the colormap
- Parameters:
editable – is the colormap editable
- getColormapRange(data: ndarray | _Colormappable | None = None) tuple[float, float] [source]¶
Return (vmin, vmax) the range of the colormap for the given data or item.
- Parameters:
data – The data or item to use for autoscale bounds.
- Returns:
(vmin, vmax) corresponding to the colormap applied to data if provided.
- getVRange() tuple[float | None, float | None] [source]¶
Get the bounds of the colormap
- Returns:
A tuple of 2 values for min and max. Or None instead of float for autoscale
- setVRange(vmin: float | None, vmax: float | None)[source]¶
Set the bounds of the colormap
- Parameters:
vmin – Lower bound of the colormap or None for autoscale (default)
vmax – Upper bounds of the colormap or None for autoscale (default)
- applyToData(data: ndarray | _Colormappable, reference: ndarray | _Colormappable | None = None) ndarray [source]¶
Apply the colormap to the data
- Parameters:
data – The data to convert or the item for which to apply the colormap.
reference – The data or item to use as reference to compute autoscale
- static getSupportedColormaps() tuple[str, ...] [source]¶
Get the supported colormap names as a tuple of str.
The list should at least contain and start by:
(‘gray’, ‘reversed gray’, ‘temperature’, ‘red’, ‘green’, ‘blue’, ‘viridis’, ‘magma’, ‘inferno’, ‘plasma’)
- preferredColormaps() tuple[str, ...] [source]¶
Returns the name of the preferred colormaps.
This list is used by widgets allowing to change the colormap like the
ColormapDialog
as a subset of colormap choices.
- setPreferredColormaps(colormaps: Iterable[str])[source]¶
Set the list of preferred colormap names.
Warning: If a colormap name is not available it will be removed from the list.
- Parameters:
colormaps – Not empty list of colormap names
- Raises:
ValueError – if the list of available preferred colormaps is empty.
- registerLUT(name: str, colors: ndarray, cursor_color: str = 'black', preferred: bool = True)[source]¶
Register a custom LUT to be used with Colormap objects.
It can override existing LUT names.
- Parameters:
name – Name of the LUT as defined to configure colormaps
colors – The custom LUT to register. Nx3 or Nx4 numpy array of RGB(A) colors, either uint8 or float in [0, 1].
preferred – If true, this LUT will be displayed as part of the preferred colormaps in dialogs.
cursor_color – Color used to display overlay over images using colormap with this LUT.