mne-tools / mne-bids-pipeline

Automatically process entire electrophysiological datasets using MNE-Python.
https://mne.tools/mne-bids-pipeline/
BSD 3-Clause "New" or "Revised" License
143 stars 68 forks source link

ENH: Add additional plots and customization options to interative mode #1004

Open scholzri opened 1 month ago

scholzri commented 1 month ago

Currently, when using mne-bids-pipeline with interactive=True, there are several key plots that would be valuable to include for more comprehensive data inspection and quality control. I propose the following enhancements:

  1. Add raw.plot() before preprocessing/_01_data_quality:

    • Allow for checking and marking bad channels early in the pipeline.
  2. Include ica.plot_components(), ica.plot_sources(), and ica.plot_scores() after preprocessing/_06a2_find_ica_artifacts:

    • Enable review and modification of automatic ICA selection if necessary.
  3. Add epochs.plot() after preprocessing/_09_ptp_reject:

    • Facilitate visualization and manual rejection of epochs.

Additionally, it would be beneficial to allow users to specify which plots they want to see in interactive mode. For example:

interactive = ['raw', 'ica', 'epochs']

This customization would give users more control over the interactive process while maintaining efficiency for those who don't need all plots.

larsoner commented 1 month ago

Personally I don't use the diagnostic plots and just inspect reports so I don't have a lot of first-hand insight here. But what you suggest adding seems to make sense, both in terms of additional plots and in terms of how to subselect different interactive sections/levels! So I would say yes if you're up for implementing these a PR would be great.