plotly / plotly/plotly.js

[FEATURE]: Method for keyboard users to toggle hoverinfo (esp. for box plots)

Open
#7,708 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature
Dominant language
JavaScript
Stars
18.3k
Forks
2k
Avg merge
2d 12h
Merged PRs (30d)
28

Description

Description

As far as I can tell, hoverinfo requires a mouse or touch interface to activate. Keyboard users would benefit from being able to toggle this information, especially for box plots. Is there a property we can access via a modeBarButton (for example) that could toggle the hoverinfo display?

Why should this feature be added?

WCAG SC 2.1.1 (Keyboard) states that mouse actions need to have a keyboard equivalent.
For box plot in particular, the box hover info is not available to keyboard users. Being able to toggle the visibility of this info on a per trace basis, and binding that to a button (or dropdown) would satisfy this case.

Mocks/Designs

Attached a mockup screenshot of what i'd like to achieve:

Image

Best regards,

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing how hoverinfo is activated for box plots and how modeBarButton or dropdown controls can affect a trace. Define a keyboard-accessible toggle for hover information on a per-trace basis, with the button or dropdown behavior and box-plot result matching the attached design.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
accessibility, data-visualization
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.