Drag inside the data-view to create annotations with the description currently selected, or If there is none selected, can add a new description for the yet uncategorized annotations.
editing the table
Remove
Programmatically
UI:
right-clicking on an individual annotation, or all selected, for an option to remove
editing the table
Edit individual annotation range
Programmatically
UI:
dragging them or their boundaries
editing the table (ideally with optional dial widgets in each value cell)
auto merge overlapping annotation ranges of same description
Add/remove/edit description (aka tag / label)
Edit the description of one single annotation or all annotations of the currently selected kind
Remove description removes all annotations of the input or selected description
ability to assign multiple descriptions to the same annotated range
Styling
Auto-color-code any annotations based on description
Labels on annotations OR some way to easily derive a legend/color-key from the annotation table
Behavior
Synchronized annotations across a HoloViews container (overlay, layout)
example: annotations need to be linked across eeg-viewer and its minimap
Synchronized annotations across plots in different notebook cells
Shift-select of multiple annotations (for batch actions)
Live-updating table UI of annotation - (ID, dimN-start, dimN-end, description(s))
Ideally as a click & type-editable tabulator-like pane
Often, the duration of annotations for a given description will be consistent (e.g. 1 second), so we need some way to create annotations just based on start/onset and a defined duration
Here is an example of how annotations are stored for MNE.. it contains original time then onset, duration, and description fields
Summary and Links
annotation
(lead:@hoxbro
)Relevant Workflows
Inspiration:
Requirements