Note
This page is a reference documentation. It only explains the function signature, and not how to use it. Please refer to the user guide for the big picture.
nilearn.plotting.plot_surf_roi¶
- nilearn.plotting.plot_surf_roi(surf_mesh, roi_map, bg_map=None, hemi='left', view='lateral', engine='matplotlib', avg_method=None, threshold=1e-14, alpha=None, vmin=None, vmax=None, cmap='gist_ncar', cbar_tick_format='auto', bg_on_data=False, darkness=0.7, title=None, title_font_size=18, output_file=None, axes=None, figure=None, **kwargs)[source]¶
Plot ROI on a surface mesh with optional background.
Added in version 0.3.
- Parameters:
- surf_meshstr or list of two numpy.ndarray or Mesh
Surface mesh geometry, can be a file (valid formats are .gii or Freesurfer specific files such as .orig, .pial, .sphere, .white, .inflated) or a list of two Numpy arrays, the first containing the x-y-z coordinates of the mesh vertices, the second containing the indices (into coords) of the mesh faces, or a Mesh object with “coordinates” and “faces” attributes.
- roi_mapstr or numpy.ndarray or list of numpy.ndarray
ROI map to be displayed on the surface mesh, can be a file (valid formats are .gii, .mgz, or Freesurfer specific files such as .thickness, .area, .curv, .sulc, .annot, .label) or a Numpy array with a value for each vertex of the surf_mesh. The value at each vertex one inside the ROI and zero inside ROI, or an integer giving the label number for atlases.
- bg_mapstr or numpy.ndarray, optional
Background image to be plotted on the mesh underneath the stat_map in greyscale, most likely a sulcal depth map for realistic shading. If the map contains values outside [0, 1], it will be rescaled such that all values are in [0, 1]. Otherwise, it will not be modified.
- hemi{“left”, “right”}, default=”left”
Hemisphere to display.
- view
str
, or a pair offloat
orint
, default=”lateral” If a string, must be in {“lateral”, “medial”, “dorsal”, “ventral”, “anterior”, “posterior”}. If a sequence, must be a pair (elev, azim) of
float
orint
angles in degrees that will manually set a custom view. E.g., view=[270.0, 90] or view=(0, -180.0). View of the surface that is rendered.- engine{‘matplotlib’, ‘plotly’}, default=’matplotlib’
Added in version 0.9.0.
Selects which plotting engine will be used by
plot_surf_roi
. Currently, onlymatplotlib
andplotly
are supported.Note
To use the
plotly
engine you need to haveplotly
installed.Note
To be able to save figures to disk with
plotly
engine you need to havekaleido
installed.Warning
The
plotly
engine is new and experimental. Please report bugs that you may encounter.- avg_method{“mean”, “median”, “min”, “max”, custom function, None}, default=None
How to average vertex values to derive the face value:
mean: results in smooth boundaries
median: results in sharp boundaries
min or max: for sparse matrices
custom function: You can also pass a custom function which will be executed though
numpy.apply_along_axis
. Here is an example of a custom function:def custom_function(vertices): return vertices[0] * vertices[1] * vertices[2]
Note
This option is currently only implemented for the
matplotlib
engine.When using matplotlib as engine, avg_method will default to
"median"
ifNone
is passed.- thresholda number or None, default=1e-14
Threshold regions that are labelled 0. If you want to use 0 as a label, set threshold to None.
- cmap
matplotlib.colors.Colormap
, orstr
, optional The colormap to use. Either a string which is a name of a matplotlib colormap, or a matplotlib colormap object. Default=’gist_ncar’.
- cbar_tick_format
str
, optional Controls how to format the tick labels of the colorbar. Ex: use “%%.2g” to display using scientific notation. Default=”auto” which defaults to integers format:
“%i” for
matplotlib
engine.“.” for
plotly
engine.
Added in version 0.7.1.
- alphafloat or ‘auto’ or None, default=None
Alpha level of the mesh (not surf_data). When using matplotlib as engine, alpha will default to
"auto"
ifNone
is passed. If ‘auto’ is chosen, alpha will default to 0.5 when no bg_map is passed and to 1 if a bg_map is passed.Note
This option is currently only implemented for the
matplotlib
engine.- bg_on_data
bool
, default=False If True and a bg_map is specified, the surf_data data is multiplied by the background image, so that e.g. sulcal depth is jointly visible with surf_data. Otherwise, the background image will only be visible where there is no surface data (either because surf_data contains nans or because is was thresholded).
Note
This non-uniformly changes the surf_data values according to e.g the sulcal depth.
- darkness
float
between 0 and 1, optional Specifying the darkness of the background image:
1 indicates that the original values of the background are used
0.5 indicates that the background values are reduced by half before being applied.
Default=1.
Note
This option is currently only implemented for the
matplotlib
engine.- title
str
, or None, default=None The title displayed on the figure.
- title_font_size
int
, default=18 Size of the title font (only implemented for the plotly engine).
Added in version 0.9.0.
- output_file
str
, or None, optional The name of an image file to export the plot to. Valid extensions are .png, .pdf, .svg. If output_file is not None, the plot is saved to a file, and the display is closed.
- axesAxes instance or None, optional
The axes instance to plot to. The projection must be ‘3d’ (e.g., plt.subplots(subplot_kw={‘projection’: ‘3d’})). If None, a new axes is created.
Note
This option is currently only implemented for the
matplotlib
engine.- figure
int
, ormatplotlib.figure.Figure
, or None, optional Matplotlib figure used or its number. If None is given, a new figure is created.
Note
This option is currently only implemented for the
matplotlib
engine.- kwargsdict, optional
Keyword arguments passed to
nilearn.plotting.plot_surf
.
See also
nilearn.datasets.fetch_surf_fsaverage
For surface data object to be used as background map for this plotting function.
nilearn.plotting.plot_surf
For brain surface visualization.
nilearn.surface.vol_to_surf
For info on the generation of surfaces.
Examples using nilearn.plotting.plot_surf_roi
¶
Loading and plotting of a cortical surface atlas
Seed-based connectivity on the surface
Loading and plotting of a cortical surface atlas