Accepted answer

That can be fixed by raising the "forExport" flag in options object:

options.chart.forExport = true;


I tried to recreate your example and I get jQuery and Highcharts loaded with jsdom. It looks like Highcharts tries to call createElement with an html fragment:

createElement('<div filled="f" stroked="f" style="position: absolute;left:0;top:0;width:10px;height:10px;"/>')

This looks fishy. I'm not sure how it works in the browser - I can't call createElement with that in my browser either (Chromium).


I replaced node.js with phantomJs which did a good job, as described in Generating HTML Canvas image data server-side? (example is from jQplot, but works for highchart as well.)

Related Query

More Query from same tag