Skip to content

Commit a3dee6a

Browse files
spec: add scatter-brush-zoom specification (#3297)
## New Specification: `scatter-brush-zoom` Related to #3295 --- ### specification.md # scatter-brush-zoom: Interactive Scatter Plot with Brush Selection and Zoom ## Description An interactive scatter plot enabling brush selection (click and drag to select a rectangular region) and zoom functionality. Users can draw selection boxes to highlight or filter data points, zoom into specific areas for detailed analysis, and use the selection to trigger downstream actions like filtering or linked views. This interaction pattern is fundamental for exploratory data analysis and brushing-and-linking visualizations. ## Applications - Exploratory data analysis where users need to select outliers or clusters for further investigation - Linked-view dashboards where brushing on a scatter plot filters data in other charts - Financial analysis selecting specific time periods and value ranges from large datasets - Scientific data exploration identifying regions of interest in multi-dimensional datasets ## Data - `x` (numeric) - Values for the horizontal axis - `y` (numeric) - Values for the vertical axis - `color` (categorical, optional) - Category for color-coding different groups - `label` (string, optional) - Point labels for identification - Size: 50-1000 points (interactivity handles larger datasets well) - Example: Simulated 2D data with multiple clusters or real dataset with continuous variables ## Notes - Brush selection should draw a visible rectangle while dragging - Selected points should be visually highlighted (color change, opacity, or border) - Zoom can be triggered via mouse wheel, double-click, or toolbar buttons - Include a reset/clear selection button to deselect all points - For libraries supporting linked selections, demonstrate how selection state can be accessed - Pan functionality should be available when zoomed in - Consider showing count of selected points in a status area --- **Next:** Add `approved` label to the issue to merge this PR. --- :robot: *[spec-create workflow](https://github.com/MarkusNeusinger/pyplots/actions/runs/20822857372)* Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 031c089 commit a3dee6a

2 files changed

Lines changed: 58 additions & 0 deletions

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# scatter-brush-zoom: Interactive Scatter Plot with Brush Selection and Zoom
2+
3+
## Description
4+
5+
An interactive scatter plot enabling brush selection (click and drag to select a rectangular region) and zoom functionality. Users can draw selection boxes to highlight or filter data points, zoom into specific areas for detailed analysis, and use the selection to trigger downstream actions like filtering or linked views. This interaction pattern is fundamental for exploratory data analysis and brushing-and-linking visualizations.
6+
7+
## Applications
8+
9+
- Exploratory data analysis where users need to select outliers or clusters for further investigation
10+
- Linked-view dashboards where brushing on a scatter plot filters data in other charts
11+
- Financial analysis selecting specific time periods and value ranges from large datasets
12+
- Scientific data exploration identifying regions of interest in multi-dimensional datasets
13+
14+
## Data
15+
16+
- `x` (numeric) - Values for the horizontal axis
17+
- `y` (numeric) - Values for the vertical axis
18+
- `color` (categorical, optional) - Category for color-coding different groups
19+
- `label` (string, optional) - Point labels for identification
20+
- Size: 50-1000 points (interactivity handles larger datasets well)
21+
- Example: Simulated 2D data with multiple clusters or real dataset with continuous variables
22+
23+
## Notes
24+
25+
- Brush selection should draw a visible rectangle while dragging
26+
- Selected points should be visually highlighted (color change, opacity, or border)
27+
- Zoom can be triggered via mouse wheel, double-click, or toolbar buttons
28+
- Include a reset/clear selection button to deselect all points
29+
- For libraries supporting linked selections, demonstrate how selection state can be accessed
30+
- Pan functionality should be available when zoomed in
31+
- Consider showing count of selected points in a status area
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Specification-level metadata for scatter-brush-zoom
2+
# Auto-synced to PostgreSQL on push to main
3+
4+
spec_id: scatter-brush-zoom
5+
title: Interactive Scatter Plot with Brush Selection and Zoom
6+
7+
# Specification tracking
8+
created: 2026-01-08T15:54:50Z
9+
updated: null
10+
issue: 3295
11+
suggested: MarkusNeusinger
12+
13+
# Classification tags (applies to all library implementations)
14+
tags:
15+
plot_type:
16+
- scatter
17+
- point
18+
data_type:
19+
- numeric
20+
- continuous
21+
domain:
22+
- general
23+
- statistics
24+
features:
25+
- interactive
26+
- 2d
27+
- correlation

0 commit comments

Comments
 (0)