[BUG]: `scattergl` hover is slow above 100k points
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 58/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- javascript
- Lĩnh vực
- data-visualization, performance
Hướng nghiên cứu
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.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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
- Ngôn ngữ chính
- JavaScript
- Star
- 18.4k
- Fork
- 2.1k
- Merge trung bình
- 1 ngày 5 giờ
- Pull request đã merge (30 ngày)
- 12
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của plotly/plotly.js
-
[BUG]: `sankey`: `node.x` / `node.y` of `0` is ignoredCó thể đã có người làm @adimalkar đã nhận 2 ngày trước. Đang mởbug P3 size: 1
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
plotly/plotly.js#8150 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
[BUG]: `scatterpolargl` drops points between 10000 and 100000 pointsCó thể đã có người làm @Tanishdete333 đã nhận 2 ngày trước. Đang mởbug P3 size: 1
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
plotly/plotly.js#8148 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
[BUG]: findEmpties throws "iterated with no new neighbors" for large NaN regions in contour (double-precision underflow)Có thể đã có người làm @davrens101 đã nhận 1 ngày trước. Đang mởbug P3 size: 3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
plotly/plotly.js#8108 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
chore P3 plotly-internal size: 3 task
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
plotly/plotly.js#8064 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
chore P1 plotly-internal size: 1 task
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của plotly/plotly.js
Issue tương tự
-
bug confirmed js v6
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
BUG
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 90/100
linuxmint/cinnamon-spices-applets#9223 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
fastify/fastify-swagger-ui#299 ·