mne_denoise.viz.plot_metric_violins#
- mne_denoise.viz.plot_metric_violins(data, metric_cols, metric_labels=None, group_col='group', subject_col='subject', group_order=None, group_colors=None, group_labels=None, baseline_group=None, reference_lines=None, show_paired=True, suptitle=None, figsize=None, fname=None, show=True)[source]#
Plot violin + strip distributions with optional paired subject lines.
- Parameters:
data (mapping of str to array-like) – Columnar mapping with group/subject columns and one or more metrics.
metric_labels (list of str | None) – Labels corresponding to
metric_cols.group_col (str) – Grouping column name.
subject_col (str) – Subject identifier column name.
group_order (list of str | None) – Optional group order. If None, first-seen order is used.
group_colors (dict | None) – Optional style overrides keyed by group.
group_labels (dict | None) – Optional style overrides keyed by group.
baseline_group (str | None) – Optional group used to draw a baseline mean line.
reference_lines (dict | None) – Optional horizontal reference lines per metric.
show_paired (bool) – Whether to draw subject-level paired lines.
suptitle (str | None) – Figure-level title.
figsize (tuple | None) – Figure size in inches. Defaults to
(4 * n_metrics, 5.5).fname (path-like | None) – Optional output path.
show (bool) – Whether to display the figure.
- Returns:
fig – Figure handle.
- Return type:
- Raises:
ImportError – If seaborn is unavailable.
Examples
>>> import numpy as np >>> from mne_denoise.viz import plot_metric_violins >>> data = { ... "subject": np.array(["s1", "s1", "s2", "s2"]), ... "group": np.array(["A", "B", "A", "B"]), ... "metric": np.array([0.2, 0.6, 0.1, 0.5]), ... } >>> fig = plot_metric_violins( ... data, ["metric"], group_col="group", subject_col="subject", show=False ... )