martinez248
Posts: 8
Joined: Wed Sep 15, 2010 10:42 pm

Optimizing Highcharts Performance

Hello,

First, thank you so much for developing such a great product! It is by far the best JS plotting package I have found (and I have used a lot).

The issue I'm having is with very large data sets. I'm trying to create time series with several data sets each with several thousand points. When I highlight a point it takes several seconds for the tooltip to even come up. Highlighting a line is really painful and zooming sometimes crashes the entire browser. I'm using a pretty beefy Mac (12GB RAM, 8 Cores, etc..) with Snow Leopard and Mozilla Firefox 3.6.8.

I'm wondering what is the absolute most optimal way to render highcharts with performance in mind (things like turning off animations, etc...). What are all the options I can turn off (or on) that will improve performance? Have you stress tested Highcharts to its extreme limits? Is there a breaking point?

Any advice on this would be greatly appreciated!

-J
martinez248
Posts: 8
Joined: Wed Sep 15, 2010 10:42 pm

Re: Optimizing Highcharts Performance

bump for great justice.
osno
Posts: 69
Joined: Wed Sep 15, 2010 5:37 am

Re: Optimizing Highcharts Performance

we've had some success with disabling the data markers,not sure if that's an option for you:

plotOptions: {
line: {
marker: {
enabled: false
}
}
}

For discussion on zooming performance you can check http://highslide.com/forum/viewtopic.php?f=9&t=7659
torstein.honsi
Site Admin
Posts: 9215
Joined: Thu Nov 09, 2006 11:22 am
Location: Vik i Sogn, Norway

Re: Optimizing Highcharts Performance

Make sure you are running Highcharts version 2.0.4, where a performance improvement was made.

Several thousand points are a bit much. Experiments have shown that disabling the mouse tracking on points speed up things, so in a future version we may run position tracking in the plot area instead of having mouseover and mouseout events on each point.
Torstein Hønsi
CTO, Founder
Highsoft
hankmoody
Posts: 15
Joined: Thu May 26, 2011 12:26 am

Re: Optimizing Highcharts Performance

Hi,

What can I do to specify that only certain datapoints of a series should have markers and mouse tracking enabled? For fairly large series it makes no sense in my case for each point to provide a tooltip and it does seem to consume more cpu resources.

Thanks!
hfrntt
Posts: 6393
Joined: Mon Aug 30, 2010 8:41 am
Contact: Website

Re: Optimizing Highcharts Performance

You can disable certain data points, see: http://jsfiddle.net/23GDw/ however you can't disable mouse tracking for points, only for a whole series. I advice to preprocess your data and interpolate it.
Slawek Kolodziej
Highcharts support team
Nickproger
Posts: 4
Joined: Fri May 04, 2012 6:42 pm

Re: Optimizing Highcharts Performance

Hmm.. The same issue with big chunk of data and browser-freezing when chart is rendered.
But when chart is ready, then it works fine, without any problem.

Seems that there are some hard calculations before chart will be plotted.

Is it possible to separate those calculations with help Web-workers or break them up with setTimeout() for avoiding browser-freezing, or something like that?
Fusher
Posts: 7912
Joined: Mon Jan 30, 2012 10:16 am

Re: Optimizing Highcharts Performance

There are plans to use web-workers, but right now we are focused on Highcharts 3.0 and fixing bugs. Meanwhile I advice to use this solution: http://www.highcharts.com/component/con ... highcharts
Paweł Fus
Highcharts Developer
vickychijwani
Posts: 1
Joined: Tue Sep 29, 2015 12:39 pm

Re: Optimizing Highcharts Performance

Fusher wrote:There are plans to use web-workers, but right now we are focused on Highcharts 3.0 and fixing bugs. Meanwhile I advice to use this solution: http://www.highcharts.com/component/con ... highcharts
Sorry for re-opening an old thread, but I found this as the only result of a web search for "Highcharts web workers". I just wanted to know, are the plans to use web workers underway yet? I believe that would significantly improve performance for large dynamic charts that are being updated very frequently (<= 1 update / sec).
User avatar
KacperMadej
Posts: 4632
Joined: Mon Sep 15, 2014 12:43 pm

Re: Optimizing Highcharts Performance

There are no official plans for implementing web workers into Highcharts as of now. To boost performance of a chart it is possible to use boost.js module - more info: http://www.highcharts.com/component/con ... ance-boost
Kacper Madej
Highcharts Developer

Return to “Highcharts Usage”