d3: Scaling when there is a large amount of data can cause lag

I have implemented the scaling function using d3 and found that the scaling process is very slow, about more than a second. I would like to ask if it is the reason for my large data volume (70000), and is there any solution for optimization?

Most probably the bottleneck would be SVG rendering; browsers start to lag when they have to display 10k or more nodes. A common solution is to render the chart with canvas instead of SVG.

Thank you for your answer. I would like to ask if you have any examples of canvas rendering with coordinate axes to share? Also, if I use canvas rendering, will the axes move when I zoom?

the axes would still be rendered with svg, but the scatterplot would be in canvas

don’t hesitate to search

Is there a way to optimize Zoom if I use plot. js to draw plots and d3 to achieve scaling?

not yet, see Panning and zooming · Issue #1590 · observablehq/plot · GitHub

ok , thanks.