mne.time_frequency.AverageTFR

class mne.time_frequency.AverageTFR(info, data, times, freqs, nave, comment=None, method=None, verbose=None)[source]

Container for Time-Frequency data.

Can for example store induced power at sensor level or inter-trial coherence.

Parameters:

info : Info

The measurement info.

data : ndarray, shape (n_channels, n_freqs, n_times)

The data.

times : ndarray, shape (n_times,)

The time values in seconds.

freqs : ndarray, shape (n_freqs,)

The frequencies in Hz.

nave : int

The number of averaged TFRs.

comment : str | None, defaults to None

Comment on the data, e.g., the experimental condition.

method : str | None, defaults to None

Comment on the method used to compute the data, e.g., morlet wavelet.

verbose : bool, str, int, or None

If not None, override default verbose level (see mne.verbose() and Logging documentation for more).

Attributes

ch_names Channel names.

Methods

__add__(tfr) Add instances.
__contains__(ch_type) Check channel type membership.
__hash__() Hash the object.
__sub__(tfr) Subtract instances.
add_channels(add_list[, force_update_info]) Append new channels to the instance.
apply_baseline(baseline[, mode, verbose]) Baseline correct the data.
copy() Return a copy of the instance.
crop([tmin, tmax]) Crop data to a given time interval in place.
drop_channels(ch_names) Drop some channels.
pick_channels(ch_names) Pick some channels.
pick_types([meg, eeg, stim, eog, ecg, emg, …]) Pick some channels by type and names.
plot(picks[, baseline, mode, tmin, tmax, …]) Plot TFRs as a two-dimensional image(s).
plot_topo([picks, baseline, mode, tmin, …]) Plot TFRs in a topography with images.
plot_topomap([tmin, tmax, fmin, fmax, …]) Plot topographic maps of time-frequency intervals of TFR data.
save(fname[, overwrite]) Save TFR object to hdf5 file.
__add__(tfr)[source]

Add instances.

__contains__(ch_type)[source]

Check channel type membership.

Parameters:

ch_type : str

Channel type to check for. Can be e.g. ‘meg’, ‘eeg’, ‘stim’, etc.

Returns:

in : bool

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
__hash__()[source]

Hash the object.

Returns:

hash : int

The hash

__sub__(tfr)[source]

Subtract instances.

add_channels(add_list, force_update_info=False)[source]

Append new channels to the instance.

Parameters:

add_list : list

A list of objects to append to self. Must contain all the same type as the current object

force_update_info : bool

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.

Returns:

inst : instance of Raw, Epochs, or Evoked

The modified instance.

apply_baseline(baseline, mode=’mean’, verbose=None)[source]

Baseline correct the data.

Parameters:

baseline : tuple or list of length 2

The time interval to apply rescaling / baseline correction. If None do not apply it. If baseline is (a, b) the interval is between “a (s)” and “b (s)”. If a is None the beginning of the data is used and if b is None then b is set to the end of the interval. If baseline is equal to (None, None) all the time interval is used.

mode : None | ‘ratio’ | ‘zscore’ | ‘mean’ | ‘percent’ | ‘logratio’ | ‘zlogratio’

Do baseline correction with ratio (power is divided by mean power during baseline) or zscore (power is divided by standard deviation of power during baseline after subtracting the mean, power = [power - mean(power_baseline)] / std(power_baseline)), mean simply subtracts the mean power, percent is the same as applying ratio then mean, logratio is the same as mean but then rendered in log-scale, zlogratio is the same as zscore but data is rendered in log-scale first. If None no baseline correction is applied.

verbose : bool, str, int, or None

If not None, override default verbose level (see mne.verbose()).

Returns:

inst : instance of AverageTFR

The modified instance.

ch_names

Channel names.

compensation_grade

The current gradient compensation grade.

copy()[source]

Return a copy of the instance.

crop(tmin=None, tmax=None)[source]

Crop data to a given time interval in place.

Parameters:

tmin : float | None

Start time of selection in seconds.

tmax : float | None

End time of selection in seconds.

Returns:

inst : instance of AverageTFR

The modified instance.

drop_channels(ch_names)[source]

Drop some channels.

Parameters:

ch_names : list

List of the names of the channels to remove.

Returns:

inst : instance of Raw, Epochs, or Evoked

The modified instance.

See also

pick_channels

Notes

New in version 0.9.0.

pick_channels(ch_names)[source]

Pick some channels.

Parameters:

ch_names : list

The list of channels to select.

Returns:

inst : instance of Raw, Epochs, or Evoked

The modified instance.

See also

drop_channels

Notes

New in version 0.9.0.

pick_types(meg=True, eeg=False, stim=False, eog=False, ecg=False, emg=False, ref_meg=’auto’, misc=False, resp=False, chpi=False, exci=False, ias=False, syst=False, seeg=False, dipole=False, gof=False, bio=False, ecog=False, fnirs=False, include=[], exclude=’bads’, selection=None)[source]

Pick some channels by type and names.

Parameters:

meg : bool | str

If True include all MEG channels. If False include None If string it can be ‘mag’, ‘grad’, ‘planar1’ or ‘planar2’ to select only magnetometers, all gradiometers, or a specific type of gradiometer.

eeg : bool

If True include EEG channels.

stim : bool

If True include stimulus channels.

eog : bool

If True include EOG channels.

ecg : bool

If True include ECG channels.

emg : bool

If True include EMG channels.

ref_meg: bool | str

If True include CTF / 4D reference channels. If ‘auto’, the reference channels are only included if compensations are present.

misc : bool

If True include miscellaneous analog channels.

resp : bool

If True include response-trigger channel. For some MEG systems this is separate from the stim channel.

chpi : bool

If True include continuous HPI coil channels.

exci : bool

Flux excitation channel used to be a stimulus channel.

ias : bool

Internal Active Shielding data (maybe on Triux only).

syst : bool

System status channel information (on Triux systems only).

seeg : bool

Stereotactic EEG channels.

dipole : bool

Dipole time course channels.

gof : bool

Dipole goodness of fit channels.

bio : bool

Bio channels.

ecog : bool

Electrocorticography channels.

fnirs : bool | 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).

include : list of string

List of additional channels to include. If empty do not include any.

exclude : list of string | str

List of channels to exclude. If ‘bads’ (default), exclude channels in info['bads'].

selection : list of string

Restrict sensor channels (MEG, EEG) to this list of channel names.

Returns:

inst : instance of Raw, Epochs, or Evoked

The modified instance.

Notes

New in version 0.9.0.

plot(picks, baseline=None, mode=’mean’, tmin=None, tmax=None, fmin=None, fmax=None, vmin=None, vmax=None, cmap=’RdBu_r’, dB=False, colorbar=True, show=True, title=None, axes=None, layout=None, yscale=’auto’, verbose=None)[source]

Plot TFRs as a two-dimensional image(s).

Parameters:

picks : array-like of int

The indices of the channels to plot, one figure per channel.

baseline : None (default) or tuple of length 2

The time interval to apply baseline correction. If None do not apply it. If baseline is (a, b) the interval is between “a (s)” and “b (s)”. If a is None the beginning of the data is used and if b is None then b is set to the end of the interval. If baseline is equal ot (None, None) all the time interval is used.

mode : None | ‘ratio’ | ‘zscore’ | ‘mean’ | ‘percent’ | ‘logratio’ | ‘zlogratio’

Do baseline correction with ratio (power is divided by mean power during baseline) or zscore (power is divided by standard deviation of power during baseline after subtracting the mean, power = [power - mean(power_baseline)] / std(power_baseline)), mean simply subtracts the mean power, percent is the same as applying ratio then mean, logratio is the same as mean but then rendered in log-scale, zlogratio is the same as zscore but data is rendered in log-scale first. If None no baseline correction is applied.

tmin : None | float

The first time instant to display. If None the first time point available is used.

tmax : None | float

The last time instant to display. If None the last time point available is used.

fmin : None | float

The first frequency to display. If None the first frequency available is used.

fmax : None | float

The last frequency to display. If None the last frequency available is used.

vmin : float | None

The mininum value an the color scale. If vmin is None, the data minimum value is used.

vmax : float | None

The maxinum value an the color scale. If vmax is None, the data maximum value is used.

cmap : matplotlib colormap | ‘interactive’ | (colormap, bool)

The 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. Hitting space bar resets the range. Up and down arrows can be used to change the colormap. If ‘interactive’, translates to (‘RdBu_r’, True). Defaults to ‘RdBu_r’.

Warning

Interactive mode works smoothly only for a small amount of images.

dB : bool

If True, 20*log10 is applied to the data to get dB.

colorbar : bool

If true, colorbar will be added to the plot. For user defined axes, the colorbar cannot be drawn. Defaults to True.

show : bool

Call pyplot.show() at the end.

title : str | None

String for title. Defaults to None (blank/no title).

axes : instance of 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 channels. If instance of Axes, there must be only one channel plotted.

layout : Layout | None

Layout instance specifying sensor positions. Used for interactive plotting of topographies on rectangle selection. If possible, the correct layout is inferred from the data.

yscale : ‘auto’ (default) | ‘linear’ | ‘log’

The scale of y (frequency) axis. ‘linear’ gives linear y axis, ‘log’ leads to log-spaced y axis and ‘auto’ detects if frequencies are log-spaced and only then sets the y axis to ‘log’.

New in version 0.14.0.

verbose : bool, str, int, or None

If not None, override default verbose level (see mne.verbose()).

Returns:

fig : matplotlib.figure.Figure

The figure containing the topography.

plot_topo(picks=None, baseline=None, mode=’mean’, tmin=None, tmax=None, fmin=None, fmax=None, vmin=None, vmax=None, layout=None, cmap=’RdBu_r’, title=None, dB=False, colorbar=True, layout_scale=0.945, show=True, border=’none’, fig_facecolor=’k’, fig_background=None, font_color=’w’, yscale=’auto’)[source]

Plot TFRs in a topography with images.

Parameters:

picks : array-like of int | None

The indices of the channels to plot. If None, all available channels are displayed.

baseline : None (default) or tuple of length 2

The time interval to apply baseline correction. If None do not apply it. If baseline is (a, b) the interval is between “a (s)” and “b (s)”. If a is None the beginning of the data is used and if b is None then b is set to the end of the interval. If baseline is equal ot (None, None) all the time interval is used.

mode : None | ‘ratio’ | ‘zscore’ | ‘mean’ | ‘percent’ | ‘logratio’ | ‘zlogratio’

Do baseline correction with ratio (power is divided by mean power during baseline) or zscore (power is divided by standard deviation of power during baseline after subtracting the mean, power = [power - mean(power_baseline)] / std(power_baseline)), mean simply subtracts the mean power, percent is the same as applying ratio then mean, logratio is the same as mean but then rendered in log-scale, zlogratio is the same as zscore but data is rendered in log-scale first. If None no baseline correction is applied.

tmin : None | float

The first time instant to display. If None the first time point available is used.

tmax : None | float

The last time instant to display. If None the last time point available is used.

fmin : None | float

The first frequency to display. If None the first frequency available is used.

fmax : None | float

The last frequency to display. If None the last frequency available is used.

vmin : float | None

The mininum value an the color scale. If vmin is None, the data minimum value is used.

vmax : float | None

The maxinum value an the color scale. If vmax is None, the data maximum value is used.

layout : Layout | None

Layout instance specifying sensor positions. If possible, the correct layout is inferred from the data.

cmap : matplotlib colormap | str

The colormap to use. Defaults to ‘RdBu_r’.

title : str

Title of the figure.

dB : bool

If True, 20*log10 is applied to the data to get dB.

colorbar : bool

If true, colorbar will be added to the plot

layout_scale : float

Scaling factor for adjusting the relative size of the layout on the canvas.

show : bool

Call pyplot.show() at the end.

border : str

matplotlib borders style to be used for each sensor plot.

fig_facecolor : str | obj

The figure face color. Defaults to black.

fig_background : None | array

A background image for the figure. This must be a valid input to matplotlib.pyplot.imshow. Defaults to None.

font_color: str | obj

The color of tick labels in the colorbar. Defaults to white.

yscale : ‘auto’ (default) | ‘linear’ | ‘log’

The scale of y (frequency) axis. ‘linear’ gives linear y axis, ‘log’ leads to log-spaced y axis and ‘auto’ detects if frequencies are log-spaced and only then sets the y axis to ‘log’.

Returns:

fig : matplotlib.figure.Figure

The figure containing the topography.

plot_topomap(tmin=None, tmax=None, fmin=None, fmax=None, ch_type=None, baseline=None, mode=’mean’, layout=None, vmin=None, vmax=None, cmap=None, sensors=True, colorbar=True, unit=None, res=64, size=2, cbar_fmt=’%1.1e’, show_names=False, title=None, axes=None, show=True, outlines=’head’, head_pos=None)[source]

Plot topographic maps of time-frequency intervals of TFR data.

Parameters:

tmin : None | float

The first time instant to display. If None the first time point available is used.

tmax : None | float

The last time instant to display. If None the last time point available is used.

fmin : None | float

The first frequency to display. If None the first frequency available is used.

fmax : None | float

The last frequency to display. If None the last frequency available is used.

ch_type : ‘mag’ | ‘grad’ | ‘planar1’ | ‘planar2’ | ‘eeg’ | 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 first available channel type from order given above is used. Defaults to None.

baseline : tuple or list of length 2

The time interval to apply rescaling / baseline correction. If None do not apply it. If baseline is (a, b) the interval is between “a (s)” and “b (s)”. If a is None the beginning of the data is used and if b is None then b is set to the end of the interval. If baseline is equal to (None, None) all the time interval is used.

mode : None | ‘ratio’ | ‘zscore’ | ‘mean’ | ‘percent’ | ‘logratio’ | ‘zlogratio’

Do baseline correction with ratio (power is divided by mean power during baseline) or zscore (power is divided by standard deviation of power during baseline after subtracting the mean, power = [power - mean(power_baseline)] / std(power_baseline)), mean simply subtracts the mean power, percent is the same as applying ratio then mean, logratio is the same as mean but then rendered in log-scale, zlogratio is the same as zscore but data is rendered in log-scale first. If None no baseline correction is applied.

layout : None | Layout

Layout instance specifying sensor positions (does not need to be specified for Neuromag data). If possible, the correct layout file is inferred from the data; if no appropriate layout file was found, the layout is automatically generated from the sensor locations.

vmin : float | callable | None

The value specifying the lower bound of the color range. If None, and vmax is None, -vmax is used. Else np.min(data) or in case data contains only positive values 0. If callable, the output equals vmin(data). Defaults to None.

vmax : float | callable | None

The value specifying the upper bound of the color range. If None, the maximum value is used. If callable, the output equals vmax(data). Defaults to None.

cmap : matplotlib colormap | (colormap, bool) | ‘interactive’ | 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. 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).

sensors : bool | 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.

colorbar : bool

Plot a colorbar.

unit : dict | str | None

The unit of the channel type used for colorbar label. If scale is None the unit is automatically determined.

res : int

The resolution of the topomap image (n pixels along each side).

size : float

Side length per topomap in inches.

cbar_fmt : str

String format for colorbar values.

show_names : bool | 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.

title : str | None

Title. If None (default), no title is displayed.

axes : instance of Axes | None

The axes to plot to. If None the axes is defined automatically.

show : bool

Call pyplot.show() at the end.

outlines : ‘head’ | ‘skirt’ | 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, and the ‘autoshrink’ (bool) field will trigger automated shrinking of the positions due to points outside the outline. 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’.

head_pos : dict | None

If None (default), the sensors are positioned such that they span the head circle. If dict, can have entries ‘center’ (tuple) and ‘scale’ (tuple) for what the center and scale of the head should be relative to the electrode locations.

Returns:

fig : matplotlib.figure.Figure

The figure containing the topography.

save(fname, overwrite=False)[source]

Save TFR object to hdf5 file.

Parameters:

fname : str

The file name, which should end with -tfr.h5 .

overwrite : bool

If True, overwrite file (if it exists). Defaults to false