For large, fast-changing data sets, axes animation is a bottleneck
Detailed description
I'm displaying several line graphs on a page, each of which updates every five seconds with a growing set of data points. I noticed browser tab hangs and eventually tracked it down to vast numbers of d3 transition timers - I've seen that queue contain over 100,000 (!) timers waiting to be flushed. By instrumenting the timerFlush function I can see it sometimes taking over 5 seconds to drain the queue, at which point more data has arrived and the cycle continues.
A simple first pass of addressing this issue is to simply support disabling the axes animation, in the same way that the line animation can be disabled.
Is this issue related to a specific component?
I haven't seen this elsewhere, but it could theoretically impact the bar graph too I guess.
For large, fast-changing data sets, axes animation is a bottleneck
Detailed description
I'm displaying several line graphs on a page, each of which updates every five seconds with a growing set of data points. I noticed browser tab hangs and eventually tracked it down to vast numbers of d3 transition timers - I've seen that queue contain over 100,000 (!) timers waiting to be flushed. By instrumenting the
timerFlush
function I can see it sometimes taking over 5 seconds to drain the queue, at which point more data has arrived and the cycle continues.A simple first pass of addressing this issue is to simply support disabling the axes animation, in the same way that the line animation can be disabled.
I haven't seen this elsewhere, but it could theoretically impact the bar graph too I guess.