mne.viz.plot_ica_sources#
- mne.viz.plot_ica_sources(ica, inst, picks=None, start=None, stop=None, title=None, show=True, block=False, show_first_samp=False, show_scrollbars=True, time_format='float', precompute=None, use_opengl=None, *, theme=None, overview_mode=None)[source]#
Plot estimated latent sources given the unmixing matrix.
Typical usecases:
plot evolution of latent sources over time based on (Raw input)
plot latent source around event related time windows (Epochs input)
plot time-locking in ICA space (Evoked input)
- Parameters:
- icainstance of
mne.preprocessing.ICA
The ICA solution.
- instinstance of
Raw
,Epochs
orEvoked
The object to plot the sources from.
- picks
int
|list
ofint
|slice
|None
Indices of the independent components (ICs) to visualize. If an integer, represents the index of the IC to pick. Multiple ICs can be selected using a list of int or a slice. The indices are 0-indexed, so
picks=1
will pick the second IC:ICA001
.None
will pick all independent components in the order fitted.- start, stop
float
|int
|None
If
inst
is aRaw
or anEvoked
object, the first and last time point (in seconds) of the data to plot. Ifinst
is aRaw
object,start=None
andstop=None
will be translated intostart=0.
andstop=3.
, respectively. ForEvoked
,None
refers to the beginning and end of the evoked signal. Ifinst
is anEpochs
object, specifies the index of the first and last epoch to show.- title
str
|None
The window title. If None a default is provided.
- show
bool
Show figure if True.
- block
bool
Whether to halt program execution until the figure is closed. Useful for interactive selection of components in raw and epoch plotter. For evoked, this parameter has no effect. Defaults to False.
- show_first_samp
bool
If True, show time axis relative to the
raw.first_samp
.- show_scrollbars
bool
Whether to show scrollbars when the plot is initialized. Can be toggled after initialization by pressing z (“zen mode”) while the plot window is focused. Default is
True
.New in version 0.19.0.
- time_format‘float’ | ‘clock’
Style of time labels on the horizontal axis. If
'float'
, labels will be number of seconds from the start of the recording. If'clock'
, labels will show “clock time” (hours/minutes/seconds) inferred fromraw.info['meas_date']
. Default is'float'
.New in version 0.24.
- precompute
bool
|str
Whether to load all data (not just the visible portion) into RAM and apply preprocessing (e.g., projectors) to the full data array in a separate processor thread, instead of window-by-window during scrolling. The default None uses the
MNE_BROWSER_PRECOMPUTE
variable, which defaults to'auto'
.'auto'
compares available RAM space to the expected size of the precomputed data, and precomputes only if enough RAM is available. This is only used with the Qt backend.New in version 0.24.
Changed in version 1.0: Support for the MNE_BROWSER_PRECOMPUTE config variable.
- use_opengl
bool
|None
Whether to use OpenGL when rendering the plot (requires
pyopengl
). May increase performance, but effect is dependent on system CPU and graphics hardware. Only works if using the Qt backend. Default is None, which will use False unless the user configuration variableMNE_BROWSER_USE_OPENGL
is set to'true'
, seemne.set_config()
.New in version 0.24.
- theme
str
| path-like Can be “auto”, “light”, or “dark” or a path-like to a custom stylesheet. For Dark-Mode and automatic Dark-Mode-Detection,
qdarkstyle
and darkdetect, respectively, are required. If None (default), the config option MNE_BROWSER_THEME will be used, defaulting to “auto” if it’s not found. Only supported by the'qt'
backend.New in version 1.0.
- overview_mode
str
|None
Can be “channels”, “empty”, or “hidden” to set the overview bar mode for the
'qt'
backend. If None (default), the config optionMNE_BROWSER_OVERVIEW_MODE
will be used, defaulting to “channels” if it’s not found.New in version 1.1.
- icainstance of
- Returns:
- fig
matplotlib.figure.Figure
| mne_qt_browser.figure.MNEQtBrowser Browser instance.
- fig
Notes
For raw and epoch instances, it is possible to select components for exclusion by clicking on the line. The selected components are added to
ica.exclude
on close.MNE-Python provides two different backends for browsing plots (i.e.,
raw.plot()
,epochs.plot()
, andica.plot_sources()
). One is based onmatplotlib
, and the other is based on PyQtGraph. You can set the backend temporarily with the context managermne.viz.use_browser_backend()
, you can set it for the duration of a Python session usingmne.viz.set_browser_backend()
, and you can set the default for your computer viamne.set_config('MNE_BROWSER_BACKEND', 'matplotlib')
(or'qt'
).Note
For the PyQtGraph backend to run in IPython with
block=False
you must run the magic command%gui qt5
first.Note
To report issues with the PyQtGraph backend, please use the issues of
mne-qt-browser
.New in version 0.10.0.