erlab.interactive.colors

Functions for manipulating colors in Qt.

Functions

color_to_QColor(c[, alpha])

Convert a matplotlib color to a PySide6.QtGui.QColor.

pg_colormap_from_name(name[, skipCache, ...])

Get a pyqtgraph.ColorMap from its name.

pg_colormap_names([source, exclude_local])

Get all valid pyqtgraph colormap names.

pg_colormap_powernorm(cmap, gamma[, ...])

pg_colormap_to_QPixmap(cmap[, w, h, skipCache])

Convert a pyqtgraph.ColorMap to a w-by-h QPixmap thumbnail.

Classes

BetterColorBarItem([parent, image, ...])

BetterImageItem([image])

pyqtgraph.ImageItem with improved colormap support.

ColorMapComboBox(*args, **kwargs)

ColorMapGammaWidget([parent, value, ...])

Slider and spinbox for adjusting colormap gamma.

class erlab.interactive.colors.BetterColorBarItem(parent=None, image=None, autoLevels=False, limits=None, pen='c', hoverPen='m', hoverBrush='#FFFFFF33', **kargs)[source]

Bases: PlotItem

property images
property primary_image
property levels: Sequence[float]
property limits: tuple[float, float]
set_width(width)[source]
set_dimensions(horiz_pad=None, vert_pad=None, font_size=11.0)[source]
level_change()[source]
level_change_fin()[source]
spanRegion()[source]
setSpanRegion(levels)[source]
setLimits(limits)[source]
addImage(image)[source]
removeImage(image)[source]
setImageItem(image, insert_in=None)[source]
image_level_changed()[source]
image_changed()[source]
reset_levels()[source]
setAutoLevels(value)[source]
color_changed()[source]
limit_changed()[source]
mouseDragEvent(ev)[source]
class erlab.interactive.colors.BetterImageItem(image=None, **kwargs)[source]

Bases: ImageItem

pyqtgraph.ImageItem with improved colormap support.

Parameters:
Signals:
  • sigColorChanged()

  • sigLimitChanged(float, float)

set_colormap(cmap, gamma, reverse=False, high_contrast=False, zero_centered=False, update=True)[source]
set_pg_colormap(cmap, update=True)[source]
class erlab.interactive.colors.ColorMapComboBox(*args, **kwargs)[source]

Bases: QComboBox

load_thumbnail(index)[source]
load_all()[source]
showPopup()[source]
setPopupMinimumWidthForItems()[source]
hidePopup()[source]
setDefaultCmap(cmap)[source]
resetCmap()[source]
class erlab.interactive.colors.ColorMapGammaWidget(parent=None, value=1.0, slider_cls=None, spin_cls=None)[source]

Bases: QWidget

Slider and spinbox for adjusting colormap gamma.

Signals:

valueChanged(float)

value()[source]
setValue(value)[source]
spin_changed(value)[source]
slider_changed(value)[source]
gamma_scale(y)[source]
gamma_scale_inv(x)[source]
erlab.interactive.colors.color_to_QColor(c, alpha=None)[source]

Convert a matplotlib color to a PySide6.QtGui.QColor.

Parameters:
Returns:

PySide6.QtGui.QColor

Return type:

QColor

erlab.interactive.colors.pg_colormap_from_name(name, skipCache=True, _loaded_all=False)[source]

Get a pyqtgraph.ColorMap from its name.

Parameters:
Returns:

pyqtgraph.ColorMap

Return type:

ColorMap

erlab.interactive.colors.pg_colormap_names(source='all', exclude_local=False)[source]

Get all valid pyqtgraph colormap names.

Parameters:

source (Literal['local', 'all', 'matplotlib'], default: "all") – If 'all', includes all colorcet colormaps.

Returns:

list of str

Return type:

list[str]

erlab.interactive.colors.pg_colormap_powernorm(cmap, gamma, reverse=False, high_contrast=False, zero_centered=False, N=65536)[source]
erlab.interactive.colors.pg_colormap_to_QPixmap(cmap, w=64, h=16, skipCache=True)[source]

Convert a pyqtgraph.ColorMap to a w-by-h QPixmap thumbnail.

Parameters:
  • cmap (str | ColorMap) – The colormap.

  • w (int, default: 64) – Specifies the dimension of the pixmap.

  • h (int, default: 16) – Specifies the dimension of the pixmap.

  • skipCache (bool, optional) – Whether to skip cache, by default True. Passed onto pg_colormap_from_name().

Returns:

PySide6.QtGui.QPixmap

Return type:

QPixmap