Browser Performance

window.requestAnimationFrame() in the Chart


CIQ.ChartEngine.useAnimation is enabled by default.

We now have all browsers using requestAnimationFrame (RAF). RAF automatically throttles to a level that the browser can handle. The maximum request rate depends on the browser implementation, but the most common method is to throttle to the refresh rate of the monitor. So if you are set to 60hz, you will get 60 frames per second (fps) as a max.

A chart will dip below the maximum frame rate when it starts to do more work than the cpu or gpu can process in a given animation frame. You would have to load up a chart pretty significantly to tax the gpu on a modern desktop or laptop, but on older devices and of course on mobile devices, you can get there pretty quickly. For instance, on the older phones in our office (Nexus and Note4) RAF can't get above 30fps, even when doing nothing. The gpu is simply too weak.

Click here for more information about window.requestAnimatinFrame().