mne-tools / mne-tools/mne-python
Feature Request: Synchronized/Combined Interactive Browsers for Comparing and Annotating Multiple Signals
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 3.5k
- Forks
- 1.6k
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 100
Description
Describe the new feature or enhancement
I would like to request a feature for the interactive browser (Raw.plot(), Epochs.plot(), etc.) that would greatly enhance workflows involving signal comparison and annotation.
Feature Description:
It would be extremely helpful to have the ability to open two (or more) MNE interactive browser windows—such as for a raw and a filtered signal—and have their navigation synchronized. Ideally, this would include:
- Synchronized time navigation: When scrolling or zooming in one browser, the other(s) follow to the same time segment.
- Combined annotation: Optionally, the ability to annotate both signals simultaneously, or to view/edit annotations on both signals in parallel.
- Stacked/linked view: Option to display two signals (e.g., original and cleaned) in a single browser window, stacked or overlaid, with full annotation and navigation features preserved for both.
Describe your proposed implementation
- Add an API to link multiple browser instances for synchronized navigation and annotation.
- Add a mode to Raw.plot() to accept multiple Raw objects and display them in a combined/stacked view with shared navigation and annotation tools.
Describe possible alternatives
Currently, this is only possible by manually aligning two windows, which is cumbersome and error-prone, and does not allow for synchronized annotation.
Additional context
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the interactive-browser entry points named in Raw.plot() and Epochs.plot(), then examine how navigation and annotations currently work across separate windows. Done requires a defined approach for synchronized time navigation and the requested annotation behavior, either across linked browsers or in a combined view.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data-visualization
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100