mne_denoise.viz.plot_harmonic_attenuation#

mne_denoise.viz.plot_harmonic_attenuation(freqs_before, gm_before, cleaned_psds, harmonics_hz, subject='', series_order=None, series_colors=None, series_labels=None, title=None, fname=None, show=True)[source]#

Plot grouped per-harmonic attenuation bars for line-noise studies.

Parameters:
  • freqs_before (array-like) – Frequency axis of the reference PSD.

  • gm_before (array-like) – Reference geometric-mean PSD.

  • cleaned_psds (dict[str, tuple[array-like, array-like]]) – Mapping from series name to (freqs, psd) after denoising.

  • harmonics_hz (array-like of float) – Harmonic frequencies to evaluate.

  • subject (str) – Optional subject label included in default title.

  • series_order (list[str] | None) – Plotting order for series. If None, keys from cleaned_psds are used.

  • series_colors (dict | None) – Optional color/label overrides keyed by series name.

  • series_labels (dict | None) – Optional color/label overrides keyed by series name.

  • title (str | None) – Custom axes title.

  • fname (path-like | None) – Optional output path.

  • show (bool) – Whether to display the figure.

Returns:

fig – Figure handle.

Return type:

matplotlib.figure.Figure

Notes

This helper is intentionally domain-specific (line-frequency harmonics) and complements the otherwise study-agnostic grouped-stat plots.