why Plotly.react() is as slow as Plotly.newPlot()? updating single trace of many
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- JavaScript
- Sterne
- 18.3k
- Forks
- 2k
- Ø Merge
- 2 T. 12 Std.
- Gemergte PRs (30 T.)
- 28
Beschreibung
Hi, I am trying to redraw only single trace in a plot of many traces (biophysical data). I tried to follow instructions in react-plotly and plotlyjs documentation:
https://plotly.com/javascript/plotlyjs-function-reference/#plotlyreact
Plot is updated but I don't see any performance improvement if I change only single element of data or all data elements:
Here is MWE in codepen
Briefly, I generated sample data 100 traces of 10000 points and changing only first trace with:
data[0].x = [...Array(10).keys()].map( c=> c/10) //change only first trace
data[0].y = [...Array(10).keys()].map( c=> Math.random())
Plotly.react('myDiv', data, layout);
Drawing plot containing single trace takes just a split of second, but if I had already drawn many traces and I want to redraw only single trace, it takes same time as to redraw all traces (few seconds).
Am I doing something wrong?
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginnen Sie mit dem verknüpften CodePen-MWE und vergleichen Sie Plotly.react() mit Plotly.newPlot() anhand der angegebenen Daten mit 100 Traces und 10.000 Datenpunkten. Lesen Sie die verknüpfte Plotly.react-Dokumentation und verfolgen Sie den Update-Pfad im Repository; das Issue nennt weder eine Quelldatei noch einen Test. Als abgeschlossen gilt die Identifizierung der Ursache für die vergleichbaren Zeitmessungen sowie die Festlegung der erwarteten Optimierung oder Dokumentationsänderung.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript
- Bereich
- data-visualization, frontend, performance
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100