Evoked data.
str
Name of evoked/average FIF file to load. If None no data is loaded.
int
, or str
Dataset ID number (int) or comment/name (str). Optional if there is only one data set in file.
Apply SSP projection vectors.
str
Either ‘average’ or ‘standard_error’. The type of data to read. Only used if ‘condition’ is a str.
str
(default False
)If True, allow loading of data that has been recorded with internal active compensation (MaxShield). Data recorded with MaxShield should generally not be loaded directly, but should first be processed using SSS/tSSS to remove the compensation signals that may also affect brain activity. Can also be “yes” to load without eliciting a warning.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
Evoked objects can only contain the average of a single set of conditions.
mne.Info
The mne.Info
object with information about the sensors and methods of measurement.
ch_names
list
of str
Channel names.
int
Number of averaged epochs.
kind
str
The data kind.
str
Comment on dataset. Can be the condition.
data
array
of shape (n_channels, n_times)The data matrix.
int
First time sample.
int
Last time sample.
tmin
float
First time point.
tmax
float
Last time point.
times
array
Time vector in seconds.
None
| tuple
of length 2This attribute reflects whether the data has been baseline-corrected
(it will be a tuple
then) or not (it will be None
).
Methods
|
Check channel type membership. |
|
Negate channel responses. |
|
Append new channels to the instance. |
|
Add SSP projection vectors. |
|
Add reference channels to data that consists of all zeros. |
|
Make animation of evoked data as topomap timeseries. |
|
Anonymize measurement information in place. |
|
Baseline correct evoked data. |
|
Apply a function to a subset of channels. |
|
Compute analytic signal or envelope for a subset of channels. |
|
Apply the signal space projection (SSP) operators to the data. |
|
Compute virtual evoked using interpolated fields. |
|
Copy the instance of evoked. |
|
Crop data to a given time interval. |
|
Decimate the time-series data. |
|
Remove SSP projection vector. |
|
Detrend data. |
|
Drop channel(s). |
|
Export Evoked to external formats. |
|
Filter a subset of channels. |
|
Get a list of channel type for each channel. |
|
Get evoked data as 2D array. |
Get a DigMontage from instance. |
|
|
Get location and latency of peak amplitude. |
|
Interpolate bad MEG and EEG channels. |
|
Pick a subset of channels. |
|
Pick some channels. |
|
Pick some channels by type and names. |
|
Plot evoked data using butterfly plots. |
|
Plot MEG/EEG fields on head surface and helmet in 3D. |
|
Plot evoked data as images. |
|
Plot evoked data as butterfly plot and add topomaps for time points. |
|
Plot SSP vector. |
|
Plot sensor positions. |
|
Plot 2D topography of evoked responses. |
|
Plot topographic maps of specific time points of evoked data. |
|
Plot whitened evoked response. |
|
Rename channels. |
|
Reorder channels. |
|
Resample data. |
|
Save evoked data to a file. |
|
Filter the data using Savitzky-Golay polynomial method. |
|
Define the sensor type of channels. |
|
Specify which reference to use for EEG data. |
|
Set the measurement start date. |
|
Set EEG/sEEG/ECoG/DBS/fNIRS channel positions and digitization points. |
|
Shift time scale in epoched or evoked data. |
|
Convert time to indices. |
|
Export data in tabular structure as a pandas DataFrame. |
Check channel type membership.
str
Channel type to check for. Can be e.g. ‘meg’, ‘eeg’, ‘stim’, etc.
Whether or not the instance contains the given channel type.
Examples
Channel type membership can be tested as:
>>> 'meg' in inst
True
>>> 'seeg' in inst
False
Negate channel responses.
Evoked
The Evoked instance with channel data negated and ‘-’ prepended to the comment.
Append new channels to the instance.
list
A list of objects to append to self. Must contain all the same type as the current object.
If True, force the info for objects to be appended to match the
values in self
. This should generally only be used when adding
stim channels for which important metadata won’t be overwritten.
New in version 0.12.
See also
Notes
If self
is a Raw instance that has been preloaded into a
numpy.memmap
instance, the memmap will be resized.
Add SSP projection vectors.
list
List with projection vectors.
Remove the projection vectors currently in the file.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Examples using add_proj
:
The Evoked data structure: evoked/averaged data
Brainstorm raw (median nerve) dataset
Add reference channels to data that consists of all zeros.
Adds reference channels to data that were not included during recording. This is useful when you need to re-reference your data to different channels. These added channels will consist of all zeros.
Make animation of evoked data as topomap timeseries.
The animation can be paused/resumed with left mouse button. Left and right arrow keys can be used to move backward or forward in time.
str
| None
Channel type to plot. Accepted data types: ‘mag’, ‘grad’, ‘eeg’, ‘hbo’, ‘hbr’, ‘fnirs_cw_amplitude’, ‘fnirs_fd_ac_amplitude’, ‘fnirs_fd_phase’, and ‘fnirs_od’. If None, first available channel type from the above list is used. Defaults to None.
array
of float
| None
The time points to plot. If None, 10 evenly spaced samples are calculated over the evoked time series. Defaults to None.
int
| None
Frame rate for the animation in Hz. If None, frame rate = sfreq / 10. Defaults to None.
Whether to plot the data as butterfly plot under the topomap. Defaults to False.
Whether to use blit to optimize drawing. In general, it is
recommended to use blit in combination with show=True
. If you
intend to save the animation it is better to disable blit.
Defaults to True.
Whether to show the animation. Defaults to True.
str
The units for the time axis, can be “ms” (default in 0.16) or “s” (will become the default in 0.17).
New in version 0.16.
float
| array-like | instance of ConductorModel
| None
| ‘auto’ | ‘eeglab’The sphere parameters to use for the head outline. Can be array-like of
shape (4,) to give the X/Y/Z origin and radius in meters, or a single float
to give just the radius (origin assumed 0, 0, 0). Can also be an instance
of a spherical ConductorModel
to use the origin and
radius from that object. If 'auto'
the sphere is fit to digitization
points. If 'eeglab'
the head circle is defined by EEG electrodes
'Fpz'
, 'Oz'
, 'T7'
, and 'T8'
(if 'Fpz'
is not present,
it will be approximated from the coordinates of 'Oz'
). None
(the
default) is equivalent to 'auto'
when enough extra digitization points
are available, and (0, 0, 0, 0.095) otherwise. Currently the head radius
does not affect plotting.
New in version 0.20.
Changed in version 1.1: Added 'eeglab'
option.
str
The image interpolation to be used. Options are 'cubic'
(default)
to use scipy.interpolate.CloughTocher2DInterpolator
,
'nearest'
to use scipy.spatial.Voronoi
or
'linear'
to use scipy.interpolate.LinearNDInterpolator
.
str
Options:
'box'
Extrapolate to four points placed to form a square encompassing all data points, where each side of the square is three times the range of the data in the respective dimension.
'local'
(default for MEG sensors)Extrapolate only to nearby points (approximately to points closer than median inter-electrode distance). This will also set the mask to be polygonal based on the convex hull of the sensors.
'head'
(default for non-MEG sensors)Extrapolate out to the edges of the clipping circle. This will be on the head circle when the sensors are contained within the head circle, but it can extend beyond the head when sensors are plotted outside the head circle.
Changed in version 0.21:
The default was changed to 'local'
for MEG sensors.
'local'
was changed to use a convex hull mask
'head'
was changed to extrapolate out to the clipping circle.
New in version 0.22.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
matplotlib.figure.Figure
The figure.
matplotlib.animation.FuncAnimation
Animation of the topomap.
Notes
New in version 0.12.0.
Examples using animate_topomap
:
Plotting topographic maps of evoked data
Anonymize measurement information in place.
int
| None
Number of days to subtract from all dates.
If None
(default), the acquisition date, info['meas_date']
,
will be set to January 1ˢᵗ, 2000
. This parameter is ignored if
info['meas_date']
is None
(i.e., no acquisition date has been set).
If True
, his_id
of subject_info
will not be overwritten.
Defaults to False
.
Warning
This could mean that info
is not fully
anonymized. Use with caution.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
Removes potentially identifying information if it exists in info
.
Specifically for each of the following we use:
A default value, or as specified by daysback
.
Default values, except for ‘birthday’ which is adjusted to maintain the subject age.
Default strings.
None
.
Zeros.
Dates use the meas_date
logic, and experimenter a default string.
Dates use the meas_date
logic, meta info uses defaults.
If info['meas_date']
is None
, it will remain None
during processing
the above fields.
Operates in place.
New in version 0.13.0.
Baseline correct evoked data.
None
| tuple
of length 2The time interval to consider as “baseline” when applying baseline
correction. If None
, do not apply baseline correction.
If a tuple (a, b)
, the interval is between a
and b
(in seconds), including the endpoints.
If a
is None
, the beginning of the data is used; and if b
is None
, it is set to the end of the interval.
If (None, None)
, the entire time interval is used.
Note
The baseline (a, b)
includes both endpoints, i.e. all
timepoints t
such that a <= t <= b
.
Correction is applied to each channel individually in the following way:
Calculate the mean signal of the baseline period.
Subtract this mean from the entire Evoked
.
Defaults to (None, 0)
, i.e. beginning of the the data until
time point zero.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Evoked
The baseline-corrected Evoked object.
Notes
Baseline correction can be done multiple times.
New in version 0.13.0.
Examples using apply_baseline
:
The Evoked data structure: evoked/averaged data
Apply a function to a subset of channels.
The function fun
is applied to the channels defined in picks
.
The evoked object’s data is modified in-place. If the function returns a different
data type (e.g. numpy.complex128
) it must be specified
using the dtype
parameter, which causes the data type of all the data
to change (even if the function is only applied to channels in picks
).
Note
If n_jobs
> 1, more memory is required as
len(picks) * n_times
additional time points need to
be temporarily stored in memory.
Note
If the data type changes (dtype != None
), more memory is
required since the original and the converted data needs
to be stored in memory.
callable()
A function to be applied to the channels. The first argument of
fun has to be a timeseries (numpy.ndarray
). The function must
operate on an array of shape (n_times,)
because it will apply channel-wise.
The function must return an ndarray
shaped like its input.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all data channels (excluding reference
MEG channels). Note that channels in info['bads']
will be included if
their names or indices are explicitly provided.
numpy.dtype
Data type to use after applying the function. If None (default) the data type is not modified.
int
| None
The number of jobs to run in parallel. If -1
, it is set
to the number of CPU cores. Requires the joblib
package.
None
(default) is a marker for ‘unset’ that will be interpreted
as n_jobs=1
(sequential execution) unless the call is performed under
a joblib.parallel_backend()
context manager that sets another
value for n_jobs
.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
dict
Additional keyword arguments to pass to fun
.
Evoked
The evoked object with transformed data.
Compute analytic signal or envelope for a subset of channels.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all data channels (excluding reference
MEG channels). Note that channels in info['bads']
will be included if
their names or indices are explicitly provided.
Compute the envelope signal of each channel. Default False. See Notes.
int
| None
The number of jobs to run in parallel. If -1
, it is set
to the number of CPU cores. Requires the joblib
package.
None
(default) is a marker for ‘unset’ that will be interpreted
as n_jobs=1
(sequential execution) unless the call is performed under
a joblib.parallel_backend()
context manager that sets another
value for n_jobs
.
int
| None
| str
Points to use in the FFT for Hilbert transformation. The signal will be padded with zeros before computing Hilbert, then cut back to original length. If None, n == self.n_times. If ‘auto’, the next highest fast FFT length will be use.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
Parameters
If envelope=False
, the analytic signal for the channels defined in
picks
is computed and the data of the Raw object is converted to
a complex representation (the analytic signal is complex valued).
If envelope=True
, the absolute value of the analytic signal for the
channels defined in picks
is computed, resulting in the envelope
signal.
If envelope=False, more memory is required since the original raw data
as well as the analytic signal have temporarily to be stored in memory.
If n_jobs > 1, more memory is required as len(picks) * n_times
additional time points need to be temporaily stored in memory.
Also note that the n_fft
parameter will allow you to pad the signal
with zeros before performing the Hilbert transform. This padding
is cut off, but it may result in a slightly different result
(particularly around the edges). Use at your own risk.
Analytic signal
The analytic signal “x_a(t)” of “x(t)” is:
x_a = F^{-1}(F(x) 2U) = x + i y
where “F” is the Fourier transform, “U” the unit step function, and “y” the Hilbert transform of “x”. One usage of the analytic signal is the computation of the envelope signal, which is given by “e(t) = abs(x_a(t))”. Due to the linearity of Hilbert transform and the MNE inverse solution, the enevlope in source space can be obtained by computing the analytic signal in sensor space, applying the MNE inverse, and computing the envelope in source space.
Apply the signal space projection (SSP) operators to the data.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
Once the projectors have been applied, they can no longer be removed. It is usually not recommended to apply the projectors at too early stages, as they are applied automatically later on (e.g. when computing inverse solutions). Hint: using the copy method individual projection vectors can be tested without affecting the original data. With evoked data, consider the following example:
projs_a = mne.read_proj('proj_a.fif')
projs_b = mne.read_proj('proj_b.fif')
# add the first, copy, apply and see ...
evoked.add_proj(a).copy().apply_proj().plot()
# add the second, copy, apply and see ...
evoked.add_proj(b).copy().apply_proj().plot()
# drop the first and see again
evoked.copy().del_proj(0).apply_proj().plot()
evoked.apply_proj() # finally keep both
Examples using apply_proj
:
The Evoked data structure: evoked/averaged data
Brainstorm raw (median nerve) dataset
Compute virtual evoked using interpolated fields.
Warning
Using virtual evoked to compute inverse can yield
unexpected results. The virtual channels have '_v'
appended
at the end of the names to emphasize that the data contained in
them are interpolated.
mne.Evoked
The transformed evoked object containing only virtual channels.
Notes
This method returns a copy and does not modify the data it operates on. It also returns an EvokedArray instance.
New in version 0.9.0.
Examples using as_type
:
Channel names.
The current gradient compensation grade.
Copy the instance of evoked.
Evoked
A copy of the object.
Examples using copy
:
Auto-generating Epochs metadata
The Evoked data structure: evoked/averaged data
EEG analysis - Event-Related Potentials (ERPs)
Source localization with equivalent current dipole (ECD) fit
4D Neuroimaging/BTi phantom dataset tutorial
Interpolate bad channels for MEG/EEG channels
Plotting topographic arrowmaps of evoked data
Compute source power spectral density (PSD) of VectorView and OPM data
Computing source timecourses with an XFit-like multi-dipole model
Compute iterative reweighted TF-MxNE with multiscale time-frequency dictionary
Brainstorm raw (median nerve) dataset
Optically pumped magnetometer (OPM) data
Crop data to a given time interval.
float
| None
Start time of selection in seconds.
float
| None
End time of selection in seconds.
If True (default), include tmax. If False, exclude tmax (similar to how Python indexing typically works).
New in version 0.19.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Raw
, Epochs
, Evoked
, AverageTFR
, or SourceEstimate
The cropped time-series object, modified in-place.
Notes
Unlike Python slices, MNE time intervals by default include both
their end points; crop(tmin, tmax)
returns the interval
tmin <= t <= tmax
. Pass include_tmax=False
to specify the half-open
interval tmin <= t < tmax
instead.
Examples using crop
:
The Evoked data structure: evoked/averaged data
Source localization with equivalent current dipole (ECD) fit
Computing various MNE solutions
Visualize source time courses (stcs)
Brainstorm CTF phantom dataset tutorial
Non-parametric 1 sample cluster statistic on single trial power
Source localization with a custom inverse solver
Compute a sparse inverse solution using the Gamma-MAP empirical Bayesian method
Compute sparse inverse solution with mixed norm: MxNE and irMxNE
Compute iterative reweighted TF-MxNE with multiscale time-frequency dictionary
Compute Rap-Music on evoked data
Compute MxNE with time-frequency sparse prior
The data matrix.
Decimate the time-series data.
int
Factor by which to subsample the data.
Warning
Low-pass filtering is not performed, this simply selects
every Nth sample (where N is the value passed to
decim
), i.e., it compresses the signal (see Notes).
If the data are not properly filtered, aliasing artifacts
may occur.
int
Apply an offset to where the decimation starts relative to the sample corresponding to t=0. The offset is in samples at the current sampling rate.
New in version 0.12.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
The decimated object.
See also
Notes
For historical reasons, decim
/ “decimation” refers to simply subselecting
samples from a given signal. This contrasts with the broader signal processing
literature, where decimation is defined as (quoting
[1], p. 172; which cites
[2]):
“… a general system for downsampling by a factor of M is the one shown in Figure 4.23. Such a system is called a decimator, and downsampling by lowpass filtering followed by compression [i.e, subselecting samples] has been termed decimation (Crochiere and Rabiner, 1983).”
Hence “decimation” in MNE is what is considered “compression” in the signal processing community.
Decimation can be done multiple times. For example,
inst.decimate(2).decimate(2)
will be the same as
inst.decimate(4)
.
If decim
is 1, this method does not copy the underlying data.
New in version 0.10.0.
References
Examples using decimate
:
Visualize source time courses (stcs)
Remove SSP projection vector.
Note
The projection vector can only be removed if it is inactive (has not been applied to the data).
Examples using del_proj
:
The Evoked data structure: evoked/averaged data
Detrend data.
This function operates in-place.
int
Either 0 or 1, the order of the detrending. 0 is a constant (DC) detrend, 1 is a linear detrend.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick good data channels. Note that channels
in info['bads']
will be included if their names or indices are
explicitly provided.
Evoked
The detrended evoked object.
Drop channel(s).
See also
Notes
New in version 0.9.0.
Examples using drop_channels
:
The Evoked data structure: evoked/averaged data
Compute source power estimate by projecting the covariance with MNE
Export Evoked to external formats.
MFF (.mff
, uses mne.export.export_evokeds_mff()
)
Warning
Since we are exporting to external formats, there’s no guarantee that all the info will be preserved in the external format. See Notes for details.
str
Name of the output file.
Format of the export. Defaults to 'auto'
, which will infer the format
from the filename extension. See supported formats above for more
information.
If True (default False), overwrite the destination file if it exists.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
New in version 1.1.
Export to external format may not preserve all the information from the
instance. To save in native MNE format (.fif
) without information loss,
use mne.Evoked.save()
instead.
Export does not apply projector(s). Unapplied projector(s) will be lost.
Consider applying projector(s) before exporting with
mne.Evoked.apply_proj()
.
Filter a subset of channels.
float
| None
For FIR filters, the lower pass-band edge; for IIR filters, the lower cutoff frequency. If None the data are only low-passed.
float
| None
For FIR filters, the upper pass-band edge; for IIR filters, the upper cutoff frequency. If None the data are only high-passed.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all data channels. Note that channels
in info['bads']
will be included if their names or indices are
explicitly provided.
str
| int
Length of the FIR filter to use (if applicable):
‘auto’ (default): The filter length is chosen based on the size of the transition regions (6.6 times the reciprocal of the shortest transition band for fir_window=’hamming’ and fir_design=”firwin2”, and half that for “firwin”).
str: A human-readable time in
units of “s” or “ms” (e.g., “10s” or “5500ms”) will be
converted to that number of samples if phase="zero"
, or
the shortest power-of-two length at least that duration for
phase="zero-double"
.
int: Specified length in samples. For fir_design=”firwin”, this should not be used.
float
| str
Width of the transition band at the low cut-off frequency in Hz
(high pass or cutoff 1 in bandpass). Can be “auto”
(default) to use a multiple of l_freq
:
min(max(l_freq * 0.25, 2), l_freq)
Only used for method='fir'
.
float
| str
Width of the transition band at the high cut-off frequency in Hz
(low pass or cutoff 2 in bandpass). Can be “auto”
(default in 0.14) to use a multiple of h_freq
:
min(max(h_freq * 0.25, 2.), info['sfreq'] / 2. - h_freq)
Only used for method='fir'
.
int
| str
Number of jobs to run in parallel. Can be ‘cuda’ if cupy
is installed properly and method=’fir’.
str
‘fir’ will use overlap-add FIR filtering, ‘iir’ will use IIR forward-backward filtering (via filtfilt).
dict
| None
Dictionary of parameters to use for IIR filtering.
If iir_params is None and method=”iir”, 4th order Butterworth will be used.
For more information, see mne.filter.construct_iir_filter()
.
str
Phase of the filter, only used if method='fir'
.
Symmetric linear-phase FIR filters are constructed, and if phase='zero'
(default), the delay of this filter is compensated for, making it
non-causal. If phase='zero-double'
,
then this filter is applied twice, once forward, and once backward
(also making it non-causal). If 'minimum'
, then a minimum-phase filter
will be constricted and applied, which is causal but has weaker stop-band
suppression.
New in version 0.13.
str
The window to use in FIR design, can be “hamming” (default), “hann” (default in 0.13), or “blackman”.
New in version 0.15.
str
Can be “firwin” (default) to use scipy.signal.firwin()
,
or “firwin2” to use scipy.signal.firwin2()
. “firwin” uses
a time-domain design technique that generally gives improved
attenuation using fewer samples than “firwin2”.
New in version 0.15.
str
| list
of str
If a string (or list of str), any annotation segment that begins
with the given string will not be included in filtering, and
segments on either side of the given excluded annotated segment
will be filtered separately (i.e., as independent signals).
The default (('edge', 'bad_acq_skip')
will separately filter
any segments that were concatenated by mne.concatenate_raws()
or mne.io.Raw.append()
, or separated during acquisition.
To disable, provide an empty list. Only used if inst
is raw.
New in version 0.16..
str
The type of padding to use. Supports all numpy.pad()
mode
options. Can also be "reflect_limited"
, which pads with a
reflected version of each vector mirrored on the first and last values
of the vector, followed by zeros.
Only used for method='fir'
.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
See also
Notes
Applies a zero-phase low-pass, high-pass, band-pass, or band-stop
filter to the channels selected by picks
.
The data are modified inplace.
The object has to have the data loaded e.g. with preload=True
or self.load_data()
.
l_freq
and h_freq
are the frequencies below which and above
which, respectively, to filter out of the data. Thus the uses are:
l_freq < h_freq
: band-pass filter
l_freq > h_freq
: band-stop filter
l_freq is not None and h_freq is None
: high-pass filter
l_freq is None and h_freq is not None
: low-pass filter
self.info['lowpass']
and self.info['highpass']
are only
updated with picks=None.
Note
If n_jobs > 1, more memory is required as
len(picks) * n_times
additional time points need to
be temporaily stored in memory.
For more information, see the tutorials
Background information on filtering and Filtering and resampling data and
mne.filter.create_filter()
.
New in version 0.15.
Examples using filter
:
Working with CTF data: the Brainstorm auditory dataset
The Evoked data structure: evoked/averaged data
Get a list of channel type for each channel.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all channels. Note that channels in
info['bads']
will be included if their names or indices are
explicitly provided.
Whether to return only unique channel types. Default is False
.
Whether to ignore non-data channels. Default is False
.
list
The channel types.
Get evoked data as 2D array.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all channels. Note that channels in
info['bads']
will be included if their names or indices are
explicitly provided.
str
| dict
| None
Specify the unit(s) that the data should be returned in. If
None
(default), the data is returned in the
channel-type-specific default units, which are SI units (see
Internal representation (units) and data channels). If a string, must be a
sub-multiple of SI units that will be used to scale the data from
all channels of the type associated with that unit. This only works
if the data contains one channel type that has a unit (unitless
channel types are left unchanged). For example if there are only
EEG and STIM channels, units='uV'
will scale EEG channels to
micro-Volts while STIM channels will be unchanged. Finally, if a
dictionary is provided, keys must be channel types, and values must
be units to scale the data of that channel type to. For example
dict(grad='fT/cm', mag='fT')
will scale the corresponding types
accordingly, but all other channel types will remain in their
channel-type-specific default unit.
float
| None
Start time of data to get in seconds.
float
| None
End time of data to get in seconds.
ndarray
, shape (n_channels, n_times)A view on evoked data.
Notes
New in version 0.24.
Examples using get_data
:
Regression-based baseline correction
Get a DigMontage from instance.
None
| str
| DigMontage
A montage containing channel positions. If a string or
DigMontage
is
specified, the existing channel information will be updated with the
channel positions from the montage. Valid strings are the names of the
built-in montages that ship with MNE-Python; you can list those via
mne.channels.get_builtin_montages()
.
If None
(default), the channel positions will be removed from the
Info
.
Get location and latency of peak amplitude.
str
| None
The channel type to use. Defaults to None. If more than one channel type is present in the data, this value must be provided.
float
| None
The minimum point in time to be considered for peak getting. If None (default), the beginning of the data is used.
float
| None
The maximum point in time to be considered for peak getting. If None (default), the end of the data is used.
How to deal with the sign of the data. If ‘pos’ only positive values will be considered. If ‘neg’ only negative values will be considered. If ‘abs’ absolute values will be considered. Defaults to ‘abs’.
Whether to return the time index instead of the latency in seconds.
If True, compute peak from merged gradiometer data.
If True, return also the amplitude at the maximum response.
New in version 0.16.
Examples using get_peak
:
The Evoked data structure: evoked/averaged data
EEG analysis - Event-Related Potentials (ERPs)
Make figures more publication ready
Interpolate bad MEG and EEG channels.
Operates in place.
If True, remove the bads from info.
str
Either 'accurate'
or 'fast'
, determines the quality of the
Legendre polynomial expansion used for interpolation of channels
using the minimum-norm method.
str
Origin of the sphere in the head coordinate frame and in meters.
Can be 'auto'
(default), which means a head-digitization-based
origin fit.
New in version 0.17.
dict
Method to use for each channel type. Currently only the key “eeg” has multiple options:
"spline"
(default)Use spherical spline interpolation.
"MNE"
Use minimum-norm projection to a sphere and back. This is the method used for MEG channels.
The value for “meg” is “MNE”, and the value for “fnirs” is “nearest”. The default (None) is thus an alias for:
method=dict(meg="MNE", eeg="spline", fnirs="nearest")
New in version 0.21.
list
| tuple
The channels to exclude from interpolation. If excluded a bad channel will stay in bads.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
New in version 0.9.0.
The data kind.
Pick a subset of channels.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all channels. Note that channels in
info['bads']
will be included if their names or indices are
explicitly provided.
list
| str
Set of channels to exclude, only used when picking based on types (e.g., exclude=”bads” when picks=”meg”).
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
New in version 0.24.0.
Examples using pick
:
Getting started with mne.Report
The Evoked data structure: evoked/averaged data
EEG analysis - Event-Related Potentials (ERPs)
Pick some channels.
list
The list of channels to select.
If True (default False), ensure that the order of the channels in
the modified instance matches the order of ch_names
.
New in version 0.20.0.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
New in version 1.1.
See also
Notes
The channel names given are assumed to be a set, i.e. the order
does not matter. The original order of the channels is preserved.
You can use reorder_channels
to set channel order if necessary.
New in version 0.9.0.
Examples using pick_channels
:
The Evoked data structure: evoked/averaged data
EEG analysis - Event-Related Potentials (ERPs)
Computing source timecourses with an XFit-like multi-dipole model
Pick some channels by type and names.
str
If True include MEG channels. If string it can be ‘mag’, ‘grad’, ‘planar1’ or ‘planar2’ to select only magnetometers, all gradiometers, or a specific type of gradiometer.
If True include EEG channels.
If True include stimulus channels.
If True include EOG channels.
If True include ECG channels.
If True include EMG channels.
str
If True include CTF / 4D reference channels. If ‘auto’, reference
channels are included if compensations are present and meg
is
not False. Can also be the string options for the meg
parameter.
If True include miscellaneous analog channels.
If True
include respiratory channels.
If True include continuous HPI coil channels.
Flux excitation channel used to be a stimulus channel.
Internal Active Shielding data (maybe on Triux only).
System status channel information (on Triux systems only).
Stereotactic EEG channels.
Dipole time course channels.
Dipole goodness of fit channels.
Bio channels.
Electrocorticography channels.
str
Functional near-infrared spectroscopy channels. If True include all fNIRS channels. If False (default) include none. If string it can be ‘hbo’ (to include channels measuring oxyhemoglobin) or ‘hbr’ (to include channels measuring deoxyhemoglobin).
EEG-CSD channels.
Deep brain stimulation channels.
list
of str
List of additional channels to include. If empty do not include any.
list
of str
| str
List of channels to exclude. If ‘bads’ (default), exclude channels
in info['bads']
.
list
of str
Restrict sensor channels (MEG, EEG) to this list of channel names.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
See also
Notes
New in version 0.9.0.
Examples using pick_types
:
Overview of MEG/EEG analysis with MNE-Python
The Evoked data structure: evoked/averaged data
Source localization with equivalent current dipole (ECD) fit
Visualize source time courses (stcs)
Make figures more publication ready
Source localization with a custom inverse solver
Compute a sparse inverse solution using the Gamma-MAP empirical Bayesian method
Compute sparse inverse solution with mixed norm: MxNE and irMxNE
Compute Rap-Music on evoked data
Compute MxNE with time-frequency sparse prior
Plot evoked data using butterfly plots.
Left click to a line shows the channel name. Selecting an area by clicking and holding left mouse button plots a topographic map of the painted area.
Note
If bad channels are not excluded they are shown in red.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all channels. Note that channels in
info['bads']
will be included if their names or indices are
explicitly provided.
list
of str
| ‘bads’Channels names to exclude from being shown. If ‘bads’, the bad channels are excluded.
Scale plot with channel (SI) unit.
Show figure if True.
dict
| None
Y limits for plots (after scaling has been applied). e.g. ylim = dict(eeg=[-20, 20]) Valid keys are eeg, mag, grad, misc. If None, the ylim parameter for each channel equals the pyplot default.
tuple
| None
X limits for plots.
If true SSP projections are applied before display. If ‘interactive’, a check box for reversible selection of SSP projection vectors will be shown. If ‘reconstruct’, projection vectors will be applied and then M/EEG data will be reconstructed via field mapping to reduce the signal bias caused by projection.
Changed in version 0.21: Support for ‘reconstruct’ was added.
list
of float
| None
The values at which to show an horizontal line.
dict
| None
The units of the channel types used for axes labels. If None,
defaults to dict(eeg='µV', grad='fT/cm', mag='fT')
.
dict
| None
The scalings of the channel types to be applied for plotting. If None,
defaults to dict(eeg=1e6, grad=1e13, mag=1e15)
.
dict
| None
The titles associated with the channels. If None, defaults to
dict(eeg='EEG', grad='Gradiometers', mag='Magnetometers')
.
Axes
| list
| None
The axes to plot to. If list, the list must be a list of Axes of the same length as the number of channel types. If instance of Axes, there must be only one channel type plotted.
Plot the global field power (GFP) or the root mean square (RMS) of the data. For MEG data, this will plot the RMS. For EEG, it plots GFP, i.e. the standard deviation of the signal across channels. The GFP is equivalent to the RMS of an average-referenced signal.
True
Plot GFP or RMS (for EEG and MEG, respectively) and traces for all channels.
'only'
Plot GFP or RMS (for EEG and MEG, respectively), and omit the traces for individual channels.
The color of the GFP/RMS trace will be green if
spatial_colors=False
, and black otherwise.
Changed in version 0.23: Plot GFP for EEG instead of RMS. Label RMS traces correctly as such.
str
| None
The title to put at the top of the figure.
If True, the lines are color coded by mapping physical sensor coordinates into color values. Spatially similar channels will have similar colors. Bad channels will be dotted. If False, the good channels are plotted black and bad channels red. Defaults to False.
str
| callable()
Which channels to put in the front or back. Only matters if
spatial_colors
is used.
If str, must be std
or unsorted
(defaults to unsorted
). If
std
, data with the lowest standard deviation (weakest effects) will
be put in front so that they are not obscured by those with stronger
effects. If unsorted
, channels are z-sorted as in the evoked
instance.
If callable, must take one argument: a numpy array of the same
dimensionality as the evoked raw data; and return a list of
unique integers corresponding to the number of channels.
New in version 0.13.0.
Whether to use interactive features. If True (default), it is possible
to paint an area to draw topomaps. When False, the interactive features
are disabled. Disabling interactive features reduces memory consumption
and is useful when using axes
parameter to draw multiaxes figures.
New in version 0.13.0.
Covariance
| str
| None
Noise covariance used to whiten the data while plotting.
Whitened data channel names are shown in italic.
Can be a string to load a covariance from disk.
See also mne.Evoked.plot_white()
for additional inspection
of noise covariance properties when whitening evoked data.
For data processed with SSS, the effective dependence between
magnetometers and gradiometers may introduce differences in scaling,
consider using mne.Evoked.plot_white()
.
New in version 0.16.0.
str
The units for the time axis, can be “s” (default) or “ms”.
New in version 0.16.
float
| array-like | instance of ConductorModel
| None
| ‘auto’ | ‘eeglab’The sphere parameters to use for the head outline. Can be array-like of
shape (4,) to give the X/Y/Z origin and radius in meters, or a single float
to give just the radius (origin assumed 0, 0, 0). Can also be an instance
of a spherical ConductorModel
to use the origin and
radius from that object. If 'auto'
the sphere is fit to digitization
points. If 'eeglab'
the head circle is defined by EEG electrodes
'Fpz'
, 'Oz'
, 'T7'
, and 'T8'
(if 'Fpz'
is not present,
it will be approximated from the coordinates of 'Oz'
). None
(the
default) is equivalent to 'auto'
when enough extra digitization points
are available, and (0, 0, 0, 0.095) otherwise. Currently the head radius
does not affect plotting.
New in version 0.20.
Changed in version 1.1: Added 'eeglab'
option.
float
, shape(2,) | array-like of float
, shape (n, 2) | None
Segments of the data to highlight by means of a light-yellow
background color. Can be used to put visual emphasis on certain
time periods. The time periods must be specified as array-like
objects in the form of (t_start, t_end)
in the unit given by the
time_unit
parameter.
Multiple time periods can be specified by passing an array-like
object of individual time periods (e.g., for 3 time periods, the shape
of the passed object would be (3, 2)
. If None
, no highlighting
is applied.
New in version 1.1.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
matplotlib.figure.Figure
Figure containing the butterfly plots.
See also
Examples using plot
:
Working with CTF data: the Brainstorm auditory dataset
Overview of artifact detection
Regression-based baseline correction
Auto-generating Epochs metadata
The Evoked data structure: evoked/averaged data
EEG analysis - Event-Related Potentials (ERPs)
Source localization with MNE, dSPM, sLORETA, and eLORETA
Brainstorm Elekta phantom dataset tutorial
Brainstorm CTF phantom dataset tutorial
4D Neuroimaging/BTi phantom dataset tutorial
Non-parametric 1 sample cluster statistic on single trial power
Non-parametric between conditions cluster statistic on single trial power
Creating MNE-Python data structures from scratch
Generate simulated evoked data
Simulate raw data using subject anatomy
Generate simulated source data
Define target events based on time lag, plot evoked response
Interpolate bad channels for MEG/EEG channels
Shifting time-scale in evoked data
Whitening evoked data with a noise covariance
Make figures more publication ready
Regression on continuous data (rER[P/F])
Analysis of evoked response using ICA and PCA reduction techniques
Compute a sparse inverse solution using the Gamma-MAP empirical Bayesian method
Compute sparse inverse solution with mixed norm: MxNE and irMxNE
Compute source power estimate by projecting the covariance with MNE
Compute Rap-Music on evoked data
Compute MxNE with time-frequency sparse prior
Brainstorm raw (median nerve) dataset
Optically pumped magnetometer (OPM) data
Plot MEG/EEG fields on head surface and helmet in 3D.
list
The surface mapping information obtained with make_field_map.
float
| None
The time point at which the field map shall be displayed. If None, the average peak latency (across sensor types) is used.
str
| None
How to print info about the time instant visualized.
int
| None
The number of jobs to run in parallel. If -1
, it is set
to the number of CPU cores. Requires the joblib
package.
None
(default) is a marker for ‘unset’ that will be interpreted
as n_jobs=1
(sequential execution) unless the call is performed under
a joblib.parallel_backend()
context manager that sets another
value for n_jobs
.
Figure3D
| None
If None (default), a new figure will be created, otherwise it will plot into the given figure.
New in version 0.20.
float
| None
Maximum intensity. Can be None to use the max(abs(data)).
New in version 0.21.
int
The number of contours.
New in version 0.21.
How interactions with the scene via an input device (e.g., mouse or
trackpad) modify the camera position. If 'terrain'
, one axis is
fixed, enabling “turntable-style” rotations. If 'trackball'
,
movement along all axes is possible, which provides more freedom of
movement, but you may incidentally perform unintentional rotations along
some axes.
Defaults to 'terrain'
.
New in version 1.1.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Figure3D
The figure.
Examples using plot_field
:
Plot evoked data as images.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all channels. Note that channels in
info['bads']
will be included if their names or indices are
explicitly provided.
This parameter can also be used to set the order the channels
are shown in, as the channel image is sorted by the order of picks.
list
of str
| ‘bads’Channels names to exclude from being shown. If ‘bads’, the bad channels are excluded.
Scale plot with channel (SI) unit.
Show figure if True.
dict
| None
Color limits for plots (after scaling has been applied). e.g.
clim = dict(eeg=[-20, 20])
.
Valid keys are eeg, mag, grad, misc. If None, the clim parameter
for each channel equals the pyplot default.
tuple
| None
X limits for plots.
If true SSP projections are applied before display. If ‘interactive’, a check box for reversible selection of SSP projection vectors will be shown.
dict
| None
The units of the channel types used for axes labels. If None,
defaults to dict(eeg='µV', grad='fT/cm', mag='fT')
.
dict
| None
The scalings of the channel types to be applied for plotting. If None,`
defaults to dict(eeg=1e6, grad=1e13, mag=1e15)
.
dict
| None
The titles associated with the channels. If None, defaults to
dict(eeg='EEG', grad='Gradiometers', mag='Magnetometers')
.
Axes
| list
| dict
| None
The axes to plot to. If list, the list must be a list of Axes of
the same length as the number of channel types. If instance of
Axes, there must be only one channel type plotted.
If group_by
is a dict, this cannot be a list, but it can be a dict
of lists of axes, with the keys matching those of group_by
. In that
case, the provided axes will be used for the corresponding groups.
Defaults to None
.
Colormap. If tuple, the first value indicates the colormap to use and
the second value is a boolean defining interactivity. In interactive
mode the colors are adjustable by clicking and dragging the colorbar
with left and right mouse button. Left mouse button moves the scale up
and down and right mouse button adjusts the range. Hitting space bar
resets the scale. Up and down arrows can be used to change the
colormap. If ‘interactive’, translates to ('RdBu_r', True)
.
Defaults to 'RdBu_r'
.
If True, plot a colorbar. Defaults to True.
New in version 0.16.
ndarray
| None
An array of booleans of the same shape as the data. Entries of the
data that correspond to False
in the mask are masked (see
do_mask
below). Useful for, e.g., masking for statistical
significance.
New in version 0.16.
None
| ‘both’ | ‘contour’ | ‘mask’If mask
is not None: if ‘contour’, a contour line is drawn around
the masked areas (True
in mask
). If ‘mask’, entries not
True
in mask
are shown transparently. If ‘both’, both a contour
and transparency are used.
If None
, defaults to ‘both’ if mask
is not None, and is ignored
otherwise.
New in version 0.16.
The colormap chosen for masked parts of the image (see below), if
mask
is not None
. If None, cmap
is reused. Defaults to
Greys
. Not interactive. Otherwise, as cmap
.
float
A float between 0 and 1. If mask
is not None, this sets the
alpha level (degree of transparency) for the masked-out segments.
I.e., if 0, masked-out segments are not visible at all.
Defaults to .25.
New in version 0.16.
str
The units for the time axis, can be “ms” or “s” (default).
New in version 0.16.
Determines if channel names should be plotted on the y axis. If False,
no names are shown. If True, ticks are set automatically by matplotlib
and the corresponding channel names are shown. If “all”, all channel
names are shown. If “auto”, is set to False if picks
is None
,
to True
if picks
contains 25 or more entries, or to “all”
if picks
contains fewer than 25 entries.
None
| dict
If a dict, the values must be picks, and axes
must also be a dict
with matching keys, or None. If axes
is None, one figure and one
axis will be created for each entry in group_by
.Then, for each
entry, the picked channels will be plotted to the corresponding axis.
If titles
are None, keys will become plot titles. This is useful
for e.g. ROIs. Each entry must contain only one channel type.
For example:
group_by=dict(Left_ROI=[1, 2, 3, 4], Right_ROI=[5, 6, 7, 8])
If None, all picked channels are plotted to the same axis.
float
| array-like | instance of ConductorModel
| None
| ‘auto’ | ‘eeglab’The sphere parameters to use for the head outline. Can be array-like of
shape (4,) to give the X/Y/Z origin and radius in meters, or a single float
to give just the radius (origin assumed 0, 0, 0). Can also be an instance
of a spherical ConductorModel
to use the origin and
radius from that object. If 'auto'
the sphere is fit to digitization
points. If 'eeglab'
the head circle is defined by EEG electrodes
'Fpz'
, 'Oz'
, 'T7'
, and 'T8'
(if 'Fpz'
is not present,
it will be approximated from the coordinates of 'Oz'
). None
(the
default) is equivalent to 'auto'
when enough extra digitization points
are available, and (0, 0, 0, 0.095) otherwise. Currently the head radius
does not affect plotting.
New in version 0.20.
Changed in version 1.1: Added 'eeglab'
option.
matplotlib.figure.Figure
Figure containing the images.
Examples using plot_image
:
Visualising statistical significance thresholds on EEG data
Analysing continuous features with binning and regression in sensor space
Plot evoked data as butterfly plot and add topomaps for time points.
Note
Axes to plot in can be passed by the user through ts_args
or
topomap_args
. In that case both ts_args
and
topomap_args
axes have to be used. Be aware that when the
axes are provided, their position may be slightly modified.
float
| array
of float
| “auto” | “peaks”The time point(s) to plot. If "auto"
, 5 evenly spaced topographies
between the first and last time instant will be shown. If "peaks"
,
finds time points automatically by checking for 3 local maxima in
Global Field Power. Defaults to "peaks"
.
str
| None
The title. If None
, suppress printing channel type title. If an
empty string, a default title is created. Defaults to ‘’. If custom
axes are passed make sure to set title=None
, otherwise some of your
axes may be removed during placement of the title axis.
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all channels. Note that channels in
info['bads']
will be included if their names or indices are
explicitly provided.
None
| list
of str
| ‘bads’Channels names to exclude from being shown. If 'bads'
, the
bad channels are excluded. Defaults to None
.
Show figure if True
. Defaults to True
.
None
| dict
A dict of kwargs
that are forwarded to mne.Evoked.plot()
to
style the butterfly plot. If they are not in this dict, the following
defaults are passed: spatial_colors=True
, zorder='std'
.
show
and exclude
are illegal.
If None
, no customizable arguments will be passed.
Defaults to None
.
None
| dict
A dict of kwargs
that are forwarded to
mne.Evoked.plot_topomap()
to style the topomaps.
If it is not in this dict, outlines='skirt'
will be passed.
show
, times
, colorbar
are illegal.
If None
, no customizable arguments will be passed.
Defaults to None
.
matplotlib.figure.Figure
| list
The figure object containing the plot. If evoked
has multiple
channel types, a list of figures, one for each channel type, is
returned.
Notes
New in version 0.12.0.
Examples using plot_joint
:
Overview of MEG/EEG analysis with MNE-Python
Overview of artifact detection
EEG analysis - Event-Related Potentials (ERPs)
Source reconstruction using an LCMV beamformer
EEG source localization given electrode locations on an MRI
Visualising statistical significance thresholds on EEG data
Transform EEG data using current source density (CSD)
Single trial linear regression analysis with the LIMO dataset
Plot SSP vector.
None
| list
The channel type to plot. For ‘grad’, the gradiometers are collec- ted in pairs and the RMS for each pair is plotted. If None (default), it will return all channel types present. If a list of ch_types is provided, it will return multiple figures.
None
Colormap to use. If tuple, the first value indicates the colormap to
use and the second value is a boolean defining interactivity. In
interactive mode (only works if colorbar=True
) the colors are
adjustable by clicking and dragging the colorbar with left and right
mouse button. Left mouse button moves the scale up and down and right
mouse button adjusts the range. Hitting space bar resets the range. Up
and down arrows can be used to change the colormap. If None (default),
‘Reds’ is used for all positive data, otherwise defaults to ‘RdBu_r’.
If ‘interactive’, translates to (None, True).
str
Add markers for sensor locations to the plot. Accepts matplotlib plot format string (e.g., ‘r+’ for red plusses). If True, a circle will be used (via .add_artist). Defaults to True.
Plot a colorbar.
int
The resolution of the topomap image (n pixels along each side).
Side length of the topomaps in inches (only applies when plotting multiple topomaps at a time).
Show figure if True.
dict
| None
The outlines to be drawn. If ‘head’, the default head scheme will be drawn. If ‘skirt’ the head scheme will be drawn, but sensors are allowed to be plotted outside of the head circle. If dict, each key refers to a tuple of x and y positions, the values in ‘mask_pos’ will serve as image mask. Alternatively, a matplotlib patch object can be passed for advanced masking options, either directly or as a function that returns patches (required for multi-axis plots). If None, nothing will be drawn. Defaults to ‘head’.
int
| array
of float
The number of contour lines to draw. If 0, no contours will be drawn. When an integer, matplotlib ticker locator is used to find suitable values for the contour thresholds (may sometimes be inaccurate, use array for accuracy). If an array, the values represent the levels for the contours. Defaults to 6.
str
The image interpolation to be used. Options are 'cubic'
(default)
to use scipy.interpolate.CloughTocher2DInterpolator
,
'nearest'
to use scipy.spatial.Voronoi
or
'linear'
to use scipy.interpolate.LinearNDInterpolator
.
Axes
| list
| None
The axes to plot to. If list, the list must be a list of Axes of the same length as the number of projectors. If instance of Axes, there must be only one projector. Defaults to None.
tuple
of length 2 | ‘joint’Colormap limits to use. If tuple
, specifies the lower and
upper bounds of the colormap (in that order); providing None
for
either of these will set the corresponding boundary at the min/max of
the data (separately for each projector). The keyword value 'joint'
will compute the colormap limits jointly across all provided
projectors of the same channel type, using the min/max of the projector
data. If vlim is 'joint'
, info
must not be None
. Defaults
to (None, None)
.
float
| array-like | instance of ConductorModel
| None
| ‘auto’ | ‘eeglab’The sphere parameters to use for the head outline. Can be array-like of
shape (4,) to give the X/Y/Z origin and radius in meters, or a single float
to give just the radius (origin assumed 0, 0, 0). Can also be an instance
of a spherical ConductorModel
to use the origin and
radius from that object. If 'auto'
the sphere is fit to digitization
points. If 'eeglab'
the head circle is defined by EEG electrodes
'Fpz'
, 'Oz'
, 'T7'
, and 'T8'
(if 'Fpz'
is not present,
it will be approximated from the coordinates of 'Oz'
). None
(the
default) is equivalent to 'auto'
when enough extra digitization points
are available, and (0, 0, 0, 0.095) otherwise. Currently the head radius
does not affect plotting.
New in version 0.20.
Changed in version 1.1: Added 'eeglab'
option.
str
The image interpolation to be used. Options are 'cubic'
(default)
to use scipy.interpolate.CloughTocher2DInterpolator
,
'nearest'
to use scipy.spatial.Voronoi
or
'linear'
to use scipy.interpolate.LinearNDInterpolator
.
str
Options:
'box'
Extrapolate to four points placed to form a square encompassing all data points, where each side of the square is three times the range of the data in the respective dimension.
'local'
(default for MEG sensors)Extrapolate only to nearby points (approximately to points closer than median inter-electrode distance). This will also set the mask to be polygonal based on the convex hull of the sensors.
'head'
(default for non-MEG sensors)Extrapolate out to the edges of the clipping circle. This will be on the head circle when the sensors are contained within the head circle, but it can extend beyond the head when sensors are plotted outside the head circle.
Changed in version 0.21:
The default was changed to 'local'
for MEG sensors.
'local'
was changed to use a convex hull mask
'head'
was changed to extrapolate out to the clipping circle.
New in version 0.20.
float
| ‘mean’Value to extrapolate to on the topomap borders. If 'mean'
(default),
then each extrapolated point has the average value of its neighbours.
New in version 0.20.
Figure
Figure distributing one image per channel across sensor topography.
Examples using plot_projs_topomap
:
The Evoked data structure: evoked/averaged data
Plot sensor positions.
str
Whether to plot the sensors as 3d, topomap or as an interactive sensor selection dialog. Available options ‘topomap’, ‘3d’, ‘select’. If ‘select’, a set of channels can be selected interactively by using lasso selector or clicking while holding control key. The selected channels are returned along with the figure instance. Defaults to ‘topomap’.
None
| str
The channel type to plot. Available options ‘mag’, ‘grad’, ‘eeg’,
‘seeg’, ‘dbs’, ‘ecog’, ‘all’. If 'all'
, all the available mag,
grad, eeg, seeg, dbs, and ecog channels are plotted. If
None (default), then channels are chosen in the order given above.
str
| None
Title for the figure. If None (default), equals to 'Sensor
positions (%s)' % ch_type
.
array
of str
Whether to display all channel names. If an array, only the channel names in the array are shown. Defaults to False.
array
of shape (n_ch_groups, n_picks) | None
Channel groups for coloring the sensors. If None (default), default
coloring scheme is used. If ‘position’, the sensors are divided
into 8 regions. See order
kwarg of mne.viz.plot_raw()
. If
array, the channels are divided by picks given in the array.
New in version 0.13.0.
Whether to project the 3d locations to a sphere. When False, the sensor array appears similar as to looking downwards straight above the subject’s head. Has no effect when kind=’3d’. Defaults to True.
New in version 0.14.0.
Axes
| instance of Axes3D
| None
Axes to draw the sensors to. If kind='3d'
, axes must be an
instance of Axes3D. If None (default), a new axes will be created.
New in version 0.13.0.
Whether to halt program execution until the figure is closed. Defaults to False.
New in version 0.13.0.
Show figure if True. Defaults to True.
float
| array-like | instance of ConductorModel
| None
| ‘auto’ | ‘eeglab’The sphere parameters to use for the head outline. Can be array-like of
shape (4,) to give the X/Y/Z origin and radius in meters, or a single float
to give just the radius (origin assumed 0, 0, 0). Can also be an instance
of a spherical ConductorModel
to use the origin and
radius from that object. If 'auto'
the sphere is fit to digitization
points. If 'eeglab'
the head circle is defined by EEG electrodes
'Fpz'
, 'Oz'
, 'T7'
, and 'T8'
(if 'Fpz'
is not present,
it will be approximated from the coordinates of 'Oz'
). None
(the
default) is equivalent to 'auto'
when enough extra digitization points
are available, and (0, 0, 0, 0.095) otherwise. Currently the head radius
does not affect plotting.
New in version 0.20.
Changed in version 1.1: Added 'eeglab'
option.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
See also
Notes
This function plots the sensor locations from the info structure using
matplotlib. For drawing the sensors using PyVista see
mne.viz.plot_alignment()
.
New in version 0.12.0.
Plot 2D topography of evoked responses.
Clicking on the plot of an individual sensor opens a new figure showing the evoked response for the selected sensor.
Layout
| None
Layout instance specifying sensor positions (does not need to be specified for Neuromag data). If possible, the correct layout is inferred from the data.
float
Scaling factor for adjusting the relative size of the layout on the canvas.
list
of color | color | None
Everything matplotlib accepts to specify colors. If not list-like, the color specified will be repeated. If None, colors are automatically drawn.
str
Matplotlib borders style to be used for each sensor plot.
dict
| None
Y limits for plots (after scaling has been applied). The value determines the upper and lower subplot limits. e.g. ylim = dict(eeg=[-20, 20]). Valid keys are eeg, mag, grad, misc. If None, the ylim parameter for each channel type is determined by the minimum and maximum peak.
dict
| None
The scalings of the channel types to be applied for plotting. If None,`
defaults to dict(eeg=1e6, grad=1e13, mag=1e15)
.
str
Title of the figure.
If true SSP projections are applied before display. If ‘interactive’, a check box for reversible selection of SSP projection vectors will be shown.
list
of float
| None
The values at which to show a vertical line.
None
| ndarray
A background image for the figure. This must work with a call to plt.imshow. Defaults to None.
Whether to use RMS value of gradiometer pairs. Only works for Neuromag data. Defaults to False.
int
| str
| tuple
If True, create a legend based on evoked.comment. If False, disable the legend. Otherwise, the legend is created and the parameter value is passed as the location parameter to the matplotlib legend call. It can be an integer (e.g. 0 corresponds to upper right corner of the plot), a string (e.g. ‘upper right’), or a tuple (x, y coordinates of the lower left corner of the legend in the axes coordinate system). See matplotlib documentation for more details.
Axes
| None
Axes to plot into. If None, axes will be created.
Background color. Typically ‘k’ (black) or ‘w’ (white; default).
New in version 0.15.0.
Covariance
| str
| None
Noise covariance used to whiten the data while plotting. Whitened data channel names are shown in italic. Can be a string to load a covariance from disk.
New in version 0.16.0.
list
of str
| ‘bads’Channels names to exclude from the plot. If ‘bads’, the bad channels are excluded. By default, exclude is set to ‘bads’.
Show figure if True.
matplotlib.figure.Figure
Images of evoked responses at sensor locations.
Notes
New in version 0.10.0.
Examples using plot_topo
:
Plot topographic maps of specific time points of evoked data.
float
| array
of float
| “auto” | “peaks” | “interactive”The time point(s) to plot. If “auto”, the number of axes
determines
the amount of time point(s). If axes
is also None, at most 10
topographies will be shown with a regular time spacing between the
first and last time instant. If “peaks”, finds time points
automatically by checking for local maxima in global field power. If
“interactive”, the time can be set interactively at run-time by using a
slider.
None
The channel type to plot. For ‘grad’, the gradiometers are collected in pairs and the RMS for each pair is plotted. If None, then channels are chosen in the order given above.
float
| callable()
| None
Lower and upper bounds of the colormap, in the same units as the data.
If vmin
and vmax
are both None
, they are set at ± the
maximum absolute value of the data (yielding a colormap with midpoint
at 0). If only one of vmin
, vmax
is None
, will use
min(data)
or max(data)
, respectively. If callable, should
accept a NumPy array
of data and return a
float.
None
Colormap to use. If tuple, the first value indicates the colormap to use and the second value is a boolean defining interactivity. In interactive mode the colors are adjustable by clicking and dragging the colorbar with left and right mouse button. Left mouse button moves the scale up and down and right mouse button adjusts the range (zoom). The mouse scroll can also be used to adjust the range. Hitting space bar resets the range. Up and down arrows can be used to change the colormap. If None (default), ‘Reds’ is used for all positive data, otherwise defaults to ‘RdBu_r’. If ‘interactive’, translates to (None, True).
Warning
Interactive mode works smoothly only for a small amount of topomaps. Interactive mode is disabled by default for more than 2 topomaps.
str
Add markers for sensor locations to the plot. Accepts matplotlib plot format string (e.g., ‘r+’ for red plusses). If True (default), circles will be used.
Plot a colorbar in the rightmost column of the figure.
dict
| float
| None
The scalings of the channel types to be applied for plotting.
If None, defaults to dict(eeg=1e6, grad=1e13, mag=1e15)
.
dict
| str
| None
The unit of the channel type used for colorbar label. If scale is None the unit is automatically determined.
int
The resolution of the topomap image (n pixels along each side).
float
Side length per topomap in inches.
str
String format for colorbar values.
str
The units for the time axis, can be “ms” or “s” (default).
New in version 0.16.
str
| None
String format for topomap values. Defaults (None) to “%01d ms” if
time_unit='ms'
, “%0.3f s” if time_unit='s'
, and
“%g” otherwise. Can be an empty string to omit the time label.
If true SSP projections are applied before display. If ‘interactive’, a check box for reversible selection of SSP projection vectors will be shown. If ‘reconstruct’, projection vectors will be applied and then M/EEG data will be reconstructed via field mapping to reduce the signal bias caused by projection.
Changed in version 0.21: Support for ‘reconstruct’ was added.
Show the figure if True
.
callable()
If True, show channel names on top of the map. If a callable is
passed, channel names will be formatted using the callable; e.g., to
delete the prefix ‘MEG ‘ from all channel names, pass the function
lambda x: x.replace('MEG ', '')
. If mask
is not None, only
significant sensors will be shown.
str
| None
The title of the generated figure. If None
(default), no title is
displayed.
ndarray
of bool, shape (n_channels, n_times) | None
Array indicating channel-time combinations to highlight with a distinct
plotting style (useful for, e.g. marking which channels at which times a statistical test of the data reaches significance). Array elements set to True
will be plotted
with the parameters given in mask_params
. Defaults to None
,
equivalent to an array of all False
elements.
dict
| None
Additional plotting parameters for plotting significant sensors. Default (None) equals:
dict(marker='o', markerfacecolor='w', markeredgecolor='k',
linewidth=0, markersize=4)
dict
| None
The outlines to be drawn. If ‘head’, the default head scheme will be drawn. If ‘skirt’ the head scheme will be drawn, but sensors are allowed to be plotted outside of the head circle. If dict, each key refers to a tuple of x and y positions, the values in ‘mask_pos’ will serve as image mask. Alternatively, a matplotlib patch object can be passed for advanced masking options, either directly or as a function that returns patches (required for multi-axis plots). If None, nothing will be drawn. Defaults to ‘head’.
int
| array
of float
The number of contour lines to draw. If 0, no contours will be drawn. When an integer, matplotlib ticker locator is used to find suitable values for the contour thresholds (may sometimes be inaccurate, use array for accuracy). If an array, the values represent the levels for the contours. The values are in µV for EEG, fT for magnetometers and fT/m for gradiometers. If colorbar=True, the ticks in colorbar correspond to the contour levels. Defaults to 6.
str
The image interpolation to be used. Options are 'cubic'
(default)
to use scipy.interpolate.CloughTocher2DInterpolator
,
'nearest'
to use scipy.spatial.Voronoi
or
'linear'
to use scipy.interpolate.LinearNDInterpolator
.
float
| array-like of float
, shape (n_times,) | None
The time window (in seconds) around a given time point to be used for
averaging. For example, 0.2 would translate into a time window that
starts 0.1 s before and ends 0.1 s after the given time point. If the
time window exceeds the duration of the data, it will be clipped.
Different time windows (one per time point) can be provided by
passing an array-like
object (e.g., [0.1, 0.2, 0.3]
). If
None
(default), no averaging will take place.
Changed in version 1.1: Support for array-like
input.
Axes
| list
| None
The axes to plot to. If list, the list must be a list of Axes of the
same length as times
(unless times
is None). If instance of
Axes, times
must be a float or a list of one float.
Defaults to None.
str
Options:
'box'
Extrapolate to four points placed to form a square encompassing all data points, where each side of the square is three times the range of the data in the respective dimension.
'local'
(default for MEG sensors)Extrapolate only to nearby points (approximately to points closer than median inter-electrode distance). This will also set the mask to be polygonal based on the convex hull of the sensors.
'head'
(default for non-MEG sensors)Extrapolate out to the edges of the clipping circle. This will be on the head circle when the sensors are contained within the head circle, but it can extend beyond the head when sensors are plotted outside the head circle.
Changed in version 0.21:
The default was changed to 'local'
for MEG sensors.
'local'
was changed to use a convex hull mask
'head'
was changed to extrapolate out to the clipping circle.
New in version 0.18.
float
| array-like | instance of ConductorModel
| None
| ‘auto’ | ‘eeglab’The sphere parameters to use for the head outline. Can be array-like of
shape (4,) to give the X/Y/Z origin and radius in meters, or a single float
to give just the radius (origin assumed 0, 0, 0). Can also be an instance
of a spherical ConductorModel
to use the origin and
radius from that object. If 'auto'
the sphere is fit to digitization
points. If 'eeglab'
the head circle is defined by EEG electrodes
'Fpz'
, 'Oz'
, 'T7'
, and 'T8'
(if 'Fpz'
is not present,
it will be approximated from the coordinates of 'Oz'
). None
(the
default) is equivalent to 'auto'
when enough extra digitization points
are available, and (0, 0, 0, 0.095) otherwise. Currently the head radius
does not affect plotting.
New in version 0.20.
Changed in version 1.1: Added 'eeglab'
option.
float
| ‘mean’Value to extrapolate to on the topomap borders. If 'mean'
(default),
then each extrapolated point has the average value of its neighbours.
New in version 0.20.
int
| ‘auto’The number of rows of topographies to plot. Defaults to 1. If ‘auto’, obtains the number of rows depending on the amount of times to plot and the number of cols. Not valid when times == ‘interactive’.
New in version 0.20.
int
| ‘auto’The number of columns of topographies to plot. If ‘auto’ (default), obtains the number of columns depending on the amount of times to plot and the number of rows. Not valid when times == ‘interactive’.
New in version 0.20.
matplotlib.figure.Figure
The figure.
Notes
When existing axes
are provided and colorbar=True
, note that the
colorbar scale will only accurately reflect topomaps that are generated in
the same call as the colorbar. Note also that the colorbar will not be
resized automatically when axes
are provided; use Matplotlib’s
axes.set_position()
method or
gridspec
interface to adjust the colorbar size yourself.
Examples using plot_topomap
:
Overview of MEG/EEG analysis with MNE-Python
Working with CTF data: the Brainstorm auditory dataset
Overview of artifact detection
Preprocessing functional near-infrared spectroscopy (fNIRS) data
Regression-based baseline correction
Auto-generating Epochs metadata
EEG analysis - Event-Related Potentials (ERPs)
Source localization with equivalent current dipole (ECD) fit
Source localization with MNE, dSPM, sLORETA, and eLORETA
Spatiotemporal permutation F-test on full sensor data
Transform EEG data using current source density (CSD)
Maxwell filter data with movement compensation
Plotting topographic maps of evoked data
Permutation T-test on sensor data
Compute effect-matched-spatial filtering (EMS)
Linear classifier on sensor data with plot patterns and filters
Compute Spectro-Spatial Decomposition (SSD) spatial filters
Compute source power estimate by projecting the covariance with MNE
Brainstorm raw (median nerve) dataset
Plot whitened evoked response.
Plots the whitened evoked response and the whitened GFP as described in [3]. This function is especially useful for investigating noise covariance properties to determine if data are properly whitened (e.g., achieving expected values in line with model assumptions, see Notes below).
list
| instance of Covariance
| path-likeThe noise covariance. Can be a string to load a covariance from disk.
Show figure if True.
None
| ‘info’ | ‘full’ | dict
This controls the rank computation that can be read from the measurement info or estimated from the data. When a noise covariance is used for whitening, this should reflect the rank of that covariance, otherwise amplification of noise components can occur in whitening (e.g., often during source localization).
None
The rank will be estimated from the data after proper scaling of different channel types.
'info'
The rank is inferred from info
. If data have been processed
with Maxwell filtering, the Maxwell filtering header is used.
Otherwise, the channel counts themselves are used.
In both cases, the number of projectors is subtracted from
the (effective) number of channels in the data.
For example, if Maxwell filtering reduces the rank to 68, with
two projectors the returned value will be 66.
'full'
The rank is assumed to be full, i.e. equal to the
number of good channels. If a Covariance
is passed, this can
make sense if it has been (possibly improperly) regularized without
taking into account the true data rank.
dict
Calculate the rank only for a subset of channel types, and explicitly specify the rank for the remaining channel types. This can be extremely useful if you already know the rank of (part of) your data, for instance in case you have calculated it earlier.
This parameter must be a dictionary whose keys correspond to
channel types in the data (e.g. 'meg'
, 'mag'
, 'grad'
,
'eeg'
), and whose values are integers representing the
respective ranks. For example, {'mag': 90, 'eeg': 45}
will assume
a rank of 90
and 45
for magnetometer data and EEG data,
respectively.
The ranks for all channel types present in the data, but not specified in the dictionary will be estimated empirically. That is, if you passed a dataset containing magnetometer, gradiometer, and EEG data together with the dictionary from the previous example, only the gradiometer rank would be determined, while the specified magnetometer and EEG ranks would be taken for granted.
The default is None
.
str
The units for the time axis, can be “ms” or “s” (default).
New in version 0.16.
float
| array-like | instance of ConductorModel
| None
| ‘auto’ | ‘eeglab’The sphere parameters to use for the head outline. Can be array-like of
shape (4,) to give the X/Y/Z origin and radius in meters, or a single float
to give just the radius (origin assumed 0, 0, 0). Can also be an instance
of a spherical ConductorModel
to use the origin and
radius from that object. If 'auto'
the sphere is fit to digitization
points. If 'eeglab'
the head circle is defined by EEG electrodes
'Fpz'
, 'Oz'
, 'T7'
, and 'T8'
(if 'Fpz'
is not present,
it will be approximated from the coordinates of 'Oz'
). None
(the
default) is equivalent to 'auto'
when enough extra digitization points
are available, and (0, 0, 0, 0.095) otherwise. Currently the head radius
does not affect plotting.
New in version 0.20.
Changed in version 1.1: Added 'eeglab'
option.
list
| None
List of axes to plot into.
New in version 0.21.0.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
matplotlib.figure.Figure
The figure object containing the plot.
See also
Notes
If baseline signals match the assumption of Gaussian white noise, values should be centered at 0, and be within 2 standard deviations (±1.96) for 95% of the time points. For the global field power (GFP), we expect it to fluctuate around a value of 1.
If one single covariance object is passed, the GFP panel (bottom)
will depict different sensor types. If multiple covariance objects are
passed as a list, the left column will display the whitened evoked
responses for each channel based on the whitener from the noise covariance
that has the highest log-likelihood. The left column will depict the
whitened GFPs based on each estimator separately for each sensor type.
Instead of numbers of channels the GFP display shows the estimated rank.
Note. The rank estimation will be printed by the logger
(if verbose=True
) for each noise covariance estimator that is passed.
References
Engemann D. and Gramfort A. (2015) Automated model selection in covariance estimation and spatial whitening of MEG and EEG signals, vol. 108, 328-342, NeuroImage.
Examples using plot_white
:
Source localization with MNE, dSPM, sLORETA, and eLORETA
Whitening evoked data with a noise covariance
Whether or not projections are active.
Rename channels.
dict
| callable()
A dictionary mapping the old channel to a new channel name e.g. {‘EEG061’ : ‘EEG161’}. Can also be a callable function that takes and returns a string.
Changed in version 0.10.0: Support for a callable function.
If True (default False), allow duplicates, which will automatically
be renamed with -N
at the end.
New in version 0.22.0.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
New in version 0.9.0.
Reorder channels.
list
The desired channel order.
See also
Notes
Channel names must be unique. Channels that are not in ch_names
are dropped.
New in version 0.16.0.
Examples using reorder_channels
:
The Evoked data structure: evoked/averaged data
Resample data.
If appropriate, an anti-aliasing filter is applied before resampling. See Resampling and decimating data for more information.
Note
Data must be loaded.
float
New sample rate to use.
int
| str
Amount to pad the start and end of the data. Can also be “auto” to use a padding that will result in a power-of-two size (can be much faster).
str
| tuple
Frequency-domain window to use in resampling.
See scipy.signal.resample()
.
int
| str
Number of jobs to run in parallel. Can be ‘cuda’ if cupy
is installed properly.
str
The type of padding to use. Supports all numpy.pad()
mode
options. Can also be "reflect_limited"
, which pads with a
reflected version of each vector mirrored on the first and last values
of the vector, followed by zeros.
The default is 'edge'
, which pads with the edge values of each
vector.
New in version 0.15.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
See also
Notes
For some data, it may be more accurate to use npad=0 to reduce artifacts. This is dataset dependent – check your data!
Examples using resample
:
The Evoked data structure: evoked/averaged data
Permutation t-test on source data with spatio-temporal clustering
Repeated measures ANOVA on source data with spatio-temporal clustering
Save evoked data to a file.
str
The name of the file, which should end with -ave.fif(.gz)
or
_ave.fif(.gz)
.
If True (default False), overwrite the destination file if it exists.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
To write multiple conditions into a single file, use
mne.write_evokeds
.
Changed in version 0.23: Information on baseline correction will be stored with the data,
and will be restored when reading again via mne.read_evokeds
.
Examples using save
:
Getting started with mne.Report
Filter the data using Savitzky-Golay polynomial method.
float
Approximate high cut-off frequency in Hz. Note that this is not an exact cutoff, since Savitzky-Golay filtering [4] is done using polynomial fits instead of FIR/IIR filtering. This parameter is thus used to determine the length of the window over which a 5th-order polynomial smoothing is used.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
See also
Notes
For Savitzky-Golay low-pass approximation, see:
New in version 0.9.0.
References
Examples
>>> import mne
>>> from os import path as op
>>> evoked_fname = op.join(mne.datasets.sample.data_path(), 'MEG', 'sample', 'sample_audvis-ave.fif')
>>> evoked = mne.read_evokeds(evoked_fname, baseline=(None, 0))[0]
>>> evoked.savgol_filter(10.) # low-pass at around 10 Hz
>>> evoked.plot()
Define the sensor type of channels.
dict
A dictionary mapping a channel to a sensor type (str), e.g.,
{'EEG061': 'eog'}
.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
Notes
The following sensor types are accepted:
ecg, eeg, emg, eog, exci, ias, misc, resp, seeg, dbs, stim, syst, ecog, hbo, hbr, fnirs_cw_amplitude, fnirs_fd_ac_amplitude, fnirs_fd_phase, fnirs_od
New in version 0.9.0.
Specify which reference to use for EEG data.
Use this function to explicitly specify the desired reference for EEG. This can be either an existing electrode or a new virtual channel. This function will re-reference the data according to the desired reference.
list
of str
| str
Can be:
The name(s) of the channel(s) used to construct the reference.
'average'
to apply an average reference (default)
'REST'
to use the Reference Electrode Standardization Technique
infinity reference [5].
An empty list, in which case MNE will not attempt any re-referencing of the data
If ref_channels='average'
this argument specifies if the
average reference should be computed as a projection (True) or not
(False; default). If projection=True
, the average reference is
added as a projection and is not applied to the data (it can be
applied afterwards with the apply_proj
method). If
projection=False
, the average reference is directly applied to
the data. If ref_channels
is not 'average'
, projection
must be set to False
(the default in this case).
list
of str
| str
The name of the channel type to apply the reference to.
Valid channel types are 'auto'
, 'eeg'
, 'ecog'
, 'seeg'
,
'dbs'
. If 'auto'
, the first channel type of eeg, ecog, seeg or dbs
that is found (in that order) will be selected.
New in version 0.19.
Forward
| None
Forward solution to use. Only used with ref_channels='REST'
.
New in version 0.21.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
See also
mne.set_bipolar_reference
Convenience function for creating bipolar references.
Notes
Some common referencing schemes and the corresponding value for the
ref_channels
parameter:
A new virtual reference electrode is created by averaging the current
EEG signal by setting ref_channels='average'
. Bad EEG channels are
automatically excluded if they are properly set in info['bads']
.
Set ref_channels
to a list containing the name of the channel that
will act as the new reference, for example ref_channels=['Cz']
.
A new virtual reference electrode is created by computing the average
of the current EEG signal recorded from two or more selected channels.
Set ref_channels
to a list of channel names, indicating which
channels to use. For example, to apply an average mastoid reference,
when using the 10-20 naming scheme, set ref_channels=['M1', 'M2']
.
The given EEG electrodes are referenced to a point at infinity using the
lead fields in forward
, which helps standardize the signals.
If a reference is requested that is not the average reference, this function removes any pre-existing average reference projections.
During source localization, the EEG signal should have an average reference.
In order to apply a reference, the data must be preloaded. This is not
necessary if ref_channels='average'
and projection=True
.
For an average or REST reference, bad EEG channels are automatically
excluded if they are properly set in info['bads']
.
New in version 0.9.0.
References
Set the measurement start date.
datetime
| float
| tuple
| None
The new measurement date.
If datetime object, it must be timezone-aware and in UTC.
A tuple of (seconds, microseconds) or float (alias for
(meas_date, 0)
) can also be passed and a datetime
object will be automatically created. If None, will remove
the time reference.
See also
Notes
If you want to remove all time references in the file, call
mne.io.anonymize_info(inst.info)
after calling inst.set_meas_date(None)
.
New in version 0.20.
Set EEG/sEEG/ECoG/DBS/fNIRS channel positions and digitization points.
None
| str
| DigMontage
A montage containing channel positions. If a string or
DigMontage
is
specified, the existing channel information will be updated with the
channel positions from the montage. Valid strings are the names of the
built-in montages that ship with MNE-Python; you can list those via
mne.channels.get_builtin_montages()
.
If None
(default), the channel positions will be removed from the
Info
.
If True (default), channel name matching will be case sensitive.
New in version 0.20.
dict
Whether to use a lookup table to match unrecognized channel location names
to their known aliases. If True, uses the mapping in
mne.io.constants.CHANNEL_LOC_ALIASES
. If a dict
is passed, it
will be used instead, and should map from non-standard channel names to
names in the specified montage
. Default is False
.
New in version 0.23.
Can be 'raise'
(default) to raise an error, 'warn'
to emit a
warning, or 'ignore'
to ignore when channels have missing coordinates.
New in version 0.20.1.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
See also
Notes
Warning
Only EEG/sEEG/ECoG/DBS/fNIRS channels can have their positions set using a montage. Other channel types (e.g., MEG channels) should have their positions defined properly using their data reading functions.
Shift time scale in epoched or evoked data.
float
The (absolute or relative) time shift in seconds. If relative
is True, positive tshift increases the time value associated with
each sample, while negative tshift decreases it.
If True, increase or decrease time values by tshift
seconds.
Otherwise, shift the time values such that the time of the first
sample equals tshift
.
The modified instance.
Notes
This method allows you to shift the time values associated with each data sample by an arbitrary amount. It does not resample the signal or change the data values in any way.
Examples using shift_time
:
Shifting time-scale in evoked data
Brainstorm raw (median nerve) dataset
Convert time to indices.
ndarray
Indices corresponding to the times supplied.
Examples using time_as_index
:
The Evoked data structure: evoked/averaged data
Compute sparse inverse solution with mixed norm: MxNE and irMxNE
Time vector in seconds.
Last time point.
First time point.
Export data in tabular structure as a pandas DataFrame.
Channels are converted to columns in the DataFrame. By default,
an additional column “time” is added, unless index='time'
(in which case time values form the DataFrame’s index).
str
| list
| slice
| None
Channels to include. Slices and lists of integers will be interpreted as
channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings (e.g.,
['MEG0111', 'MEG2623']
will pick the given channels. Can also be the
string values “all” to pick all channels, or “data” to pick data
channels. None (default) will pick all channels. Note that channels in
info['bads']
will be included if their names or indices are
explicitly provided.
None
Kind of index to use for the DataFrame. If None
, a sequential
integer index (pandas.RangeIndex
) will be used. If 'time'
, a
pandas.Float64Index
, pandas.Int64Index
, or
pandas.TimedeltaIndex
will be used
(depending on the value of time_format
).
Defaults to None
.
dict
| None
Scaling factor applied to the channels picked. If None
, defaults to
dict(eeg=1e6, mag=1e15, grad=1e13)
— i.e., converts EEG to µV,
magnetometers to fT, and gradiometers to fT/cm.
If True
, data will be copied. Otherwise data may be modified in place.
Defaults to True
.
If True, the DataFrame is returned in long format where each row is one
observation of the signal at a unique combination of time point and channel.
For convenience, a ch_type
column is added to facilitate subsetting the resulting DataFrame. Defaults to False
.
str
| None
Desired time format. If None
, no conversion is applied, and time values
remain as float values in seconds. If 'ms'
, time values will be rounded
to the nearest millisecond and converted to integers. If 'timedelta'
,
time values will be converted to pandas.Timedelta
values.
Default is None
.
New in version 0.20.
str
| int
| None
Control verbosity of the logging output. If None
, use the default
verbosity level. See the logging documentation and
mne.verbose()
for details. Should only be passed as a keyword
argument.
pandas.DataFrame
A dataframe suitable for usage with other statistical/plotting/analysis packages.
Examples using to_data_frame
:
The Evoked data structure: evoked/averaged data
mne.Evoked
#Getting started with mne.Report
Rejecting bad data spans and breaks
Background on projectors and projections
Signal-space separation (SSS) and Maxwell filtering
Regression-based baseline correction
The Evoked data structure: evoked/averaged data
EEG analysis - Event-Related Potentials (ERPs)
Source localization with equivalent current dipole (ECD) fit
The role of dipole orientations in distributed source localization
Computing various MNE solutions
Source reconstruction using an LCMV beamformer
Visualize source time courses (stcs)
Brainstorm Elekta phantom dataset tutorial
Visualising statistical significance thresholds on EEG data
Spatiotemporal permutation F-test on full sensor data
Creating MNE-Python data structures from scratch
Interpolate bad channels for MEG/EEG channels
Plot sensor denoising using oversampled temporal projection
Shifting time-scale in evoked data
Plotting topographic arrowmaps of evoked data
Plotting topographic maps of evoked data
Make figures more publication ready
Compute source power spectral density (PSD) of VectorView and OPM data
Permutation T-test on sensor data
Analysing continuous features with binning and regression in sensor space
Analysis of evoked response using ICA and PCA reduction techniques
Compute effect-matched-spatial filtering (EMS)
Linear classifier on sensor data with plot patterns and filters
Compute Spectro-Spatial Decomposition (SSD) spatial filters
Compute MNE-dSPM inverse solution on evoked data in volume source space
Source localization with a custom inverse solver
Compute a sparse inverse solution using the Gamma-MAP empirical Bayesian method
Generate a functional label from source estimates
Extracting the time series of activations in a label
Compute sparse inverse solution with mixed norm: MxNE and irMxNE
Compute MNE inverse solution on evoked data with a mixed source space
Morph volumetric source estimate
Plot point-spread functions (PSFs) and cross-talk functions (CTFs)
Compute Rap-Music on evoked data
Compute spatial resolution metrics in source space
Compute spatial resolution metrics to compare MEG with EEG+MEG
Estimate data SNR using an inverse
Compute MxNE with time-frequency sparse prior
Plotting the full vector-valued MNE solution