influxdata / influxdata/giraffe
Multiple Plot zoom and unzoom support
- Dominant language
- TypeScript
- Stars
- 189
- Forks
- 33
- Avg merge
- 3d 15h
- Merged PRs (30d)
- 4
Description
When an app has multiple `` components visible, there are cases where a user wants to zoom in one `` (click-drag) and have that behavior reflected on all ``s. Same for unzoom. (Giraffe may already have this for unzoom, but it should also work with zoom seamlessly). Make this behavior easier to implement.
There should be a way to do the following:
- allow multiple ``s to be zoomed and unzoomed at the same time
- **_even when they have different dimensions_**
- access the default zoom and unzoom behavior from the custom callbacks for the domain
- set the min and max based on a percentage
- translate the mouse position offset using a percentage (of the `` the user is interacting with) and sending it to all ``s
Contributor guide
Research direction
Start by tracing the Plot component's zoom and unzoom behavior, including the custom domain callbacks and any existing Giraffe unzoom support. Define how synchronized interactions should work across differently sized plots, including percentage-based bounds and mouse offsets, then verify each listed behavior with the relevant tests or examples.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- data-visualization, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100