Note

This page is a reference documentation. It only explains the class signature, and not how to use it. Please refer to the user guide for the big picture.

nilearn.plotting.displays.MosaicSlicer#

class nilearn.plotting.displays.MosaicSlicer(cut_coords, axes=None, black_bg=False, brain_color=(0.5, 0.5, 0.5), **kwargs)[source]#

A class to create 3 Axes for plotting cuts of 3D maps, in multiple rows and columns. This visualization mode can be activated from Nilearn plotting functions, like plot_img, by setting display_mode='mosaic'.

from nilearn.datasets import load_mni152_template
from nilearn.plotting import plot_img
img = load_mni152_template()
# display is an instance of the MosaicSlicer class
display = plot_img(img, display_mode='mosaic')

See also

nilearn.plotting.displays.TiledSlicer

Three cuts are performed in orthogonal directions.

nilearn.plotting.displays.OrthoSlicer

Three cuts are performed and arranged in a 2x2 grid.

Attributes
cut_coordsdict <str: 1D ndarray>

The cut coordinates in a dictionary. The keys are the directions (‘x’, ‘y’, ‘z’), and the values are arrays holding the cut coordinates.

axesdict of Axes

The 3 axes used to plot multiple views.

frame_axesAxes

The axes framing the whole set of views.

__init__(cut_coords, axes=None, black_bg=False, brain_color=(0.5, 0.5, 0.5), **kwargs)[source]#
classmethod find_cut_coords(img=None, threshold=None, cut_coords=None)[source]#

Instantiate the slicer and find cut coordinates for mosaic plotting.

Parameters
img3D Nifti1Image, optional

The brain image.

thresholdfloat, optional

The lower threshold to the positive activation. If None, the activation threshold is computed using the 80% percentile of the absolute value of the map.

cut_coordslist / tuple of 3 float, int, optional

xyz world coordinates of cuts. If cut_coords are not provided, 7 coordinates of cuts are automatically calculated.

Returns
cut_coordsdict

xyz world coordinates of cuts in a direction. Each key denotes the direction.

draw_cross(cut_coords=None, **kwargs)[source]#

Draw a crossbar on the plot to show where the cut is performed.

Parameters
cut_coords3-tuple of float, optional

The position of the cross to draw. If None is passed, the OrthoSlicer’s cut coordinates are used.

kwargsdict

Extra keyword arguments are passed to function matplotlib.pyplot.axhline.

add_contours(img, threshold=1e-06, filled=False, **kwargs)[source]#

Contour a 3D map in all the views.

Parameters
imgNiimg-like object

See input-output. Provides image to plot.

thresholdint or float or None, optional

Threshold to apply:

  • If None is given, the maps are not thresholded.

  • If a number is given, it is used to threshold the maps, values below the threshold (in absolute value) are plotted as transparent.

Default=1e-6.

filledbool, optional

If filled=True, contours are displayed with color fillings. Default=False.

kwargsdict

Extra keyword arguments are passed to function contour, or function contourf. Useful, arguments are typical “levels”, which is a list of values to use for plotting a contour or contour fillings (if filled=True), and “colors”, which is one color or a list of colors for these contours.

Notes

If colors are not specified, default coloring choices (from matplotlib) for contours and contour_fillings can be different.

add_edges(img, color='r')[source]#

Plot the edges of a 3D map in all the views.

Parameters
imgNiimg-like object

See input-output. The 3D map to be plotted. If it is a masked array, only the non-masked part will be plotted.

colormatplotlib color: str or (r, g, b) value

The color used to display the edge map. Default=’r’.

add_markers(marker_coords, marker_color='r', marker_size=30, **kwargs)[source]#

Add markers to the plot.

Parameters
marker_coordsndarray of shape (n_markers, 3)

Coordinates of the markers to plot. For each slice, only markers that are 2 millimeters away from the slice are plotted.

marker_colorpyplot compatible color or list of shape (n_markers,), optional

List of colors for each marker that can be string or matplotlib colors. Default=’r’.

marker_sizefloat or list of float of shape (n_markers,), optional

Size in pixel for each marker. Default=30.

add_overlay(img, threshold=1e-06, colorbar=False, cbar_tick_format='%.2g', cbar_vmin=None, cbar_vmax=None, **kwargs)[source]#

Plot a 3D map in all the views.

Parameters
imgNiimg-like object

See input-output. If it is a masked array, only the non-masked part will be plotted.

thresholdint or float or None, optional

Threshold to apply:

  • If None is given, the maps are not thresholded.

  • If a number is given, it is used to threshold the maps: values below the threshold (in absolute value) are plotted as transparent.

Default=1e-6.

cbar_tick_format: str, optional

Controls how to format the tick labels of the colorbar. Ex: use “%i” to display as integers. Default is ‘%.2g’ for scientific notation.

colorbarbool, optional

If True, display a colorbar on the right of the plots. Default=False.

kwargsdict

Extra keyword arguments are passed to function imshow.

cbar_vminfloat, optional

Minimal value for the colorbar. If None, the minimal value is computed based on the data.

cbar_vmaxfloat, optional

Maximal value for the colorbar. If None, the maximal value is computed based on the data.

annotate(left_right=True, positions=True, scalebar=False, size=12, scale_size=5.0, scale_units='cm', scale_loc=4, decimals=0, **kwargs)[source]#

Add annotations to the plot.

Parameters
left_rightbool, optional

If True, annotations indicating which side is left and which side is right are drawn. Default=True.

positionsbool, optional

If True, annotations indicating the positions of the cuts are drawn. Default=True.

scalebarbool, optional

If True, cuts are annotated with a reference scale bar. For finer control of the scale bar, please check out the draw_scale_bar method on the axes in “axes” attribute of this object. Default=False.

sizeint, optional

The size of the text used. Default=12.

scale_sizeint or float, optional

The length of the scalebar, in units of scale_units. Default=5.0.

scale_units{‘cm’, ‘mm’}, optional

The units for the scalebar. Default=’cm’.

scale_locint, optional

The positioning for the scalebar. Default=4. Valid location codes are:

  • 1: “upper right”

  • 2: “upper left”

  • 3: “lower left”

  • 4: “lower right”

  • 5: “right”

  • 6: “center left”

  • 7: “center right”

  • 8: “lower center”

  • 9: “upper center”

  • 10: “center”

decimalsint, optional

Number of decimal places on slice position annotation. If zero, the slice position is integer without decimal point. Default=0.

kwargsdict

Extra keyword arguments are passed to matplotlib’s text function.

property black_bg#
property brain_color#
close()[source]#

Close the figure. This is necessary to avoid leaking memory.

classmethod init_with_figure(img, threshold=None, cut_coords=None, figure=None, axes=None, black_bg=False, leave_space=False, colorbar=False, brain_color=(0.5, 0.5, 0.5), **kwargs)[source]#

Initialize the slicer with an image.

Parameters
imgNiimg-like object

See input-output.

cut_coords3 tuple of int

The cut position, in world space.

axesmatplotlib.axes.Axes, optional

The axes that will be subdivided in 3.

black_bgbool, optional

If True, the background of the figure will be put to black. If you wish to save figures with a black background, you will need to pass facecolor='k', edgecolor='k' to matplotlib.pyplot.savefig. Default=False.

brain_colortuple, optional

The brain color to use as the background color (e.g., for transparent colorbars). Default=(0.5, 0.5, 0.5).

savefig(filename, dpi=None)[source]#

Save the figure to a file.

Parameters
filenamestr

The file name to save to. Its extension determines the file type, typically ‘.png’, ‘.svg’ or ‘.pdf’.

dpiNone or scalar, optional

The resolution in dots per inch. Default=None.

title(text, x=0.01, y=0.99, size=15, color=None, bgcolor=None, alpha=1, **kwargs)[source]#

Write a title to the view.

Parameters
textstr

The text of the title.

xfloat, optional

The horizontal position of the title on the frame in fraction of the frame width. Default=0.01.

yfloat, optional

The vertical position of the title on the frame in fraction of the frame height. Default=0.99.

sizeint, optional

The size of the title text. Default=15.

colormatplotlib color specifier, optional

The color of the font of the title.

bgcolormatplotlib color specifier, optional

The color of the background of the title.

alphafloat, optional

The alpha value for the background. Default=1.

kwargs

Extra keyword arguments are passed to matplotlib’s text function.

Examples using nilearn.plotting.displays.MosaicSlicer#

More plotting tools from nilearn

More plotting tools from nilearn

More plotting tools from nilearn