Я хочу экспортировать изображение из Highchart с Phantomjs , но при выполнении следующей команды возвращается пустое изображение SVG.
phantomjs rendrer.js
Я сделал инъекциювсе высокоуровневые js-файлы вверху, но вызов console.log в конце возвращает ноль.
var system = require('system');
var page = require('webpage').create();
var fs = require('fs');
// load JS libraries
page.injectJs("jquery-3.4.1.min.js");
page.injectJs("https://code.highcharts.com/highcharts.js");
page.injectJs("https://code.highcharts.com/modules/exporting.js");
page.injectJs("https://code.highcharts.com/modules/export-
data.js ");
// chart demo
var args = {
width: 600,
height: 500
};
var svg = page.evaluate(function(opt) {
$('body').prepend('<div id="container"></div>');
var chart = new Highcharts.Chart({
chart: {
type: 'column'
},
title: {
text: 'Total fruit consumtion, grouped by gender'
},
xAxis: {
categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']
},
yAxis: {
allowDecimals: false,
min: 0,
title: {
text: 'Number of fruits'
}
},
plotOptions: {
column: {
stacking: 'normal'
}
},
series: [{
name: 'John',
data: [5, 3, 4, 7, 2]
}]
});
return chart.getSVG(opt);
}, args);
console.log(svg)
// Saving SVG to a file
fs.write("demo.svg", svg);
// Saving diagram as PDF
page.render('demo.pdf');
phantom.exit();