[BUG]: `scattergl` hover is slow above 100k points
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 58/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- javascript
Línea de trabajo
Start by comparing the hover path in src/traces/scattergl/hover.js with the threshold and point-cluster tree behavior in src/traces/scattergl/constants.ts; reproduce the lag with the provided 100,000 point example and compare it with 99,999 points. Determine why the .range() call is slow with infinite or wide bounds, then verify hover remains responsive at and above the threshold.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
With 100,000 or more points, hovering over a scattergl trace is much slower than with 99,999 points.
Steps to reproduce
- Open Plotly devtools and paste the following into the browser devtools console:
let n = 100000;
Plotly.newPlot('graph', [{
type: 'scattergl',
mode: 'markers',
x0: 0,
dx: 1,
y: Array(n).fill(0)
}]);
- Hover over individual points and note the lag
- Change
nto99999and note that hover is fast
Notes
- At
TOO_MANY_POINTS(src/traces/scattergl/constants.ts),scatterglswitches from a plain array to the point-cluster tree - The slow call is
.range()insrc/traces/scattergl/hover.js - It's very slow with infinite bounds; it also seems slower than a plain array scan when the bounds cover a large share of the points
- Either
hover.jscalls.range()in a non-optimal way, orplotly/point-clusterhas a performance bug - #8052 stops the plot from freezing, but hover is still laggy
- Also related to #8036
- Lenguaje dominante
- JavaScript
- Estrellas
- 18.4k
- Forks
- 2.1k
- Merge medio
- 1 d 5 h
- PR fusionados (30 d)
- 12
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de plotly/plotly.js
-
[BUG]: `sankey`: `node.x` / `node.y` of `0` is ignoredPosiblemente ocupada @adimalkar la tomó hace 3 días. Abiertobug P3 size: 1
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
plotly/plotly.js#8150 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
[BUG]: `scatterpolargl` drops points between 10000 and 100000 pointsPosiblemente ocupada @Tanishdete333 la tomó hace 2 días. Abiertobug P3 size: 1
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
plotly/plotly.js#8148 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
[BUG]: findEmpties throws "iterated with no new neighbors" for large NaN regions in contour (double-precision underflow)Posiblemente ocupada @davrens101 la tomó hace 2 días. Abiertobug P3 size: 3
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
plotly/plotly.js#8108 · 4 comentarios ·
Los mantenedores suelen responder en 2 días
-
chore P3 plotly-internal size: 3 task
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
plotly/plotly.js#8064 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
chore P1 plotly-internal size: 1 task
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
Los mantenedores suelen responder en 2 días
Todos los issues de plotly/plotly.js
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
riverqueue/river#1576 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
good first issue help wanted
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
modrollstudio/Modroll-Studio-Website#80 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Add tests for CSV email parsingAbiertogood first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
mafzalkalwardev/mailforge#21 ·
-
good first issue help wanted
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100