plotly / plotly/react-plotly.js
How to properly fetch data on relayout (onRelayout)?
Nessuno ha ancora preso questa issue.
- Lingua principale
- JavaScript
- Stelle
- 1.1k
- Fork
- 138
- Merge medio
- 3g 2h
- PR unite (30g)
- 4
Descrizione
I need this functionality and request some assistance to realize it.
At the moment I use the following approach:
- when user zoomed plot, onRelayout handler gets fired and starts data loading.
- when data is loaded it is passed to the component
- new data leads to re-render.
it's works fine, but:
- if I catch the moment when component is re-rendering because of the new data and do an aditional zoom operation at the same moment, then I get a strange jump/flickering of my plot for a moment.
It's looks like a race of states.
Inner state which is responsible for zoom transformations changes at the same time with component re-rendering.
I need advice on how to get rid of this bug. Or how to propeply realize this feature, in case if I completely wrong in my approach.
Thanks.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
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 tracciando l’handler onRelayout e il flusso di aggiornamento del componente React Plot descritti nell’issue. Riproduci la sequenza di zoom, caricamento di nuovi dati, nuovo rendering e nuovo zoom; il lavoro è completato quando il plot non salta più né sfarfalla durante questa interazione sovrapposta.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript, react
- Ambito
- data-visualization, frontend
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 35/100