generic¶
Functions that will be useful irrespective of backend.
- heatmap_slicer(X, Y, heatmaps, slices='horizontal', heatmap_names=None, cmap=None, vmin=None, vmax=None, figsize=(18, 9), linecolor='k', labels=('X', 'Y'), interaction_type='move', fig=None)[source]¶
Compare horizontal and/or vertical slices across multiple arrays.
- Parameters
X,Y (1D array)
heatmaps (array_like) – must be 2-D or 3-D. If 3-D the last two axes should be (X,Y)
slices ({‘horizontal’, ‘vertical’, ‘both’}) – Direction to draw slice on heatmap. both will draw horizontal and vertical traces on the same plot, while both_separate will make a line plot for each.
heatmap_names ((String, String, …)) – An iterable with the names of the heatmaps. If provided it must have as many names as there are heatmaps
cmap (str or Colormap, optional) – A Colormap instance or registered colormap name.
vmin, vmax (float, optional) – The colorbar range. If None, suitable min/max values are automatically chosen by the Normalize instance.
figsize (tuple of number, default: (18, 9)) – The size of the created figure. Ignored if fig is not None.
linecolor (colorlike, default: ‘k’) – The color of the cursor showing the slices. Must be a valid Matplotlib linecolor.
labels ((string, string), default: (“X”, “Y”)) – The labels for the x and y axes.
interaction_type (str) – Update on mouse movement or mouse click. Options are {‘move’,’click’}
fig (matplotlib figure, optional) – The figure to use for the heatmap_slicer. Useful when embedding into a gui. If you are embedding into a gui make sure you set up the gui canvas first and then pass the figure to this function
- Returns
fig (matplotlib.Figure.figure)
ax (tuple of matplotlib.axes.Axes)
- hyperslicer(arr, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, vmin_vmax=None, origin=None, extent=None, autoscale_cmap=True, filternorm=True, filterrad=4.0, resample=None, url=None, ax=None, slider_formats=None, title=None, force_ipywidgets=False, play_buttons=False, is_color_image=False, controls=None, display_controls=True, **kwargs)[source]¶
View slices from a hyperstack of images selected by sliders. Also accepts Xarray.DataArrays in which case the axes names and coordinates will be inferred from the xarray dims and coords.
- Parameters
arr (arraylike or xarray) – Hyperstack of images. The last 2 or 3 dimensions will be treated as individiual images. If an xarray.DataArray then the dimensions will be automatically inferred.
cmap (str or
Colormap
) – The Colormap instance or registered colormap name used to map scalar data to colors. This parameter is ignored for RGB(A) data. forwarded to matplotlibnorm (
Normalize
, optional) – TheNormalize
instance used to scale scalar data to the [0, 1] range before mapping to colors using cmap. By default, a linear scaling mapping the lowest value to 0 and the highest to 1 is used. This parameter is ignored for RGB(A) data. forwarded to matplotlibautoscale_cmap (bool) – If True rescale the colormap for every function update. Will not update if vmin and vmax are provided or if the returned image is RGB(A) like. forwarded to matplotlib
aspect ({‘equal’, ‘auto’} or float) – forwarded to matplotlib interpolation : str forwarded to matplotlib
ax (matplotlib axis, optional) – if None a new figure and axis will be created
slider_formats (None, string, or dict) – If None a default value of decimal points will be used. Uses the new {} style formatting
title (None or string) – If a string then you can have it update automatically using string formatting of the names of the parameters. i.e. to include the current value of tau: title=’the value of tau is: {tau:.2f}’
force_ipywidgets (boolean) – If True ipywidgets will always be used, even if not using the ipympl backend. If False the function will try to detect if it is ok to use ipywidgets If ipywidgets are not used the function will fall back on matplotlib widgets
play_buttons (bool or str or dict, optional) – Whether to attach an ipywidgets.Play widget to any sliders that get created. If a boolean it will apply to all kwargs, if a dictionary you choose which sliders you want to attach play buttons too.
None: no sliders
True: sliders on the lft
False: no sliders
‘left’: sliders on the left
‘right’: sliders on the right
is_color_image (boolean) – If True, will treat the last 3 dimensions as comprising a color images and will only set up sliders for the first arr.ndim - 3 dimensions.
controls (mpl_interactions.controller.Controls) – An existing controls object if you want to tie multiple plot elements to the same set of controls
display_controls (boolean) – Whether the controls should display on creation. Ignored if controls is specified.
- Returns
controls
- class image_segmenter(img, nclasses=1, mask=None, mask_colors=None, mask_alpha=0.75, lineprops=None, lasso_mousebutton='left', pan_mousebutton='middle', ax=None, figsize=(10, 10), **kwargs)[source]¶
Bases:
object
Manually segment an image with the lasso selector.
- class panhandler(fig, button=3)[source]¶
Bases:
object
Enable panning a plot with any mouse button.
button determines which button will be used (default right click) Left: 1 Middle: 2 Right: 3
- zoom_factory(ax, base_scale=1.1)[source]¶
Add ability to zoom with the scroll wheel.
- Parameters
ax (matplotlib axes object) – axis on which to implement scroll to zoom
base_scale (float) – how much zoom on each tick of scroll wheel
- Returns
disconnect_zoom (function) – call this to disconnect the scroll listener