add tooltip annotation feature
Nessuno ha ancora preso questa issue.
- Lingua principale
- JavaScript
- Stelle
- 18.3k
- Fork
- 2k
- Merge medio
- 2g 12h
- PR unite (30g)
- 28
Descrizione
Hi,
I would like to propose a tooltip feature.
When exploring data and presenting our findings, it is important to be able to interactively annotate data points. Most popular data analysis software allow to do that.
I wrote a code to introduce this functionality (found in this branch). The tooltip function can be activated by a new modebar button. It allows to add an annotation to every clicked point. By default, tooltips contain x and y coordinates. They can be customized to contain any additional data attached to the trace or points, which makes it a powerful tool for data exploration and presentation.
When a plot is created with editable: true, the tooltips can be dragged around for placement or deleted interactively. Their text can also be edited. To delete a tooltip, click on its text and delete it.
Tooltips can be customized with an optional tooltiptemplate (leverages existing hovertemplate code) and tooltip annotation options (leverages existing annotations code)
Live example
The JS version is already compatible with Dash when a figure is created with a dictionary passed to dcc.Graph (Dash demo) but not yet with Plotly.py
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia dal branch dev-tooltip collegato, dal relativo README e dall'esempio live, quindi esamina il pulsante modebar proposto insieme al comportamento esistente di annotations e hovertemplate. La demo Dash si trova in demo/dash/dash_app_with_tooltip.py. Il lavoro è completato quando il comportamento delle annotazioni tooltip, la relativa personalizzazione, modifica, trascinamento ed eliminazione funzionano come descritto e rimangono compatibili con l'utilizzo esistente di plotly.js.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript
- Ambito
- data-visualization
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100