我正在尝试使用 Highcharts 和 phantomjs 生成一些服务器端图表,但不断出现以下错误:
Can't find variable Highcharts.
我知道这里有类似的问题,但没有一个对我有帮助。 我正在使用 Windows,使用 phantomjs 2.1.1,Highcharts 4.2.5
这是 options.js 文件:
{
infile: {
xAxis: {
categories:['Jan','Feb','Mar','Apr',
'May','Jun','Jul','Aug',
'Sep','Oct','Nov','Dec']
},
series:[
{
data:[29.9,71.5,106.4,129.2,
144.0,176.0,135.6,148.5,
216.4,194.1,95.6,54.4]
}]
},
callback: function(chart){
chart.renderer
.arc(200,150,100,50,-Math.PI,0)
.attr({fill:'#FCFFC5',stroke:'black','stroke-width':1})
.add();
},
constr: "Chart",
outfile: "//tmp//chart.png"
}
以及 highcharts-convert.js 配置选项:
var config = {
HIGHCHARTS: 'highcharts.js',
JQUERY: 'jquery-1.9.1.min.js',
TIMEOUT: 5000 /* 5 seconds timout for loading images */
},
有人解决过这个问题吗?
最佳答案
我有完全相同的问题,尽管我的命令看起来有点不同:
phantomjs highcharts-convert.js -infile delete_this.json -outfile /home/max/BLA.png -width 300 -constr Chart -resources highcharts.js,jquery.js
如您所见,我使用 phantom js 的 -resources 选项包含了所需的文件,但我仍然收到“无法找到变量:Highcharts”错误。
也许资源部分对您有帮助?
编辑:我解决了我的问题,我想也解决了你的问题。
如果您像我描述的那样使用命令,它不会给您 Highcharts 错误,但它会在尝试解析资源时中断。这是由于当前版本的 highcharts-convert.js 脚本中存在严重错误。
在第 682 行,他们拆分了参数,但他们使用了未定义的参数资源。
fileList = resources.split('\,');
您需要将其更改为:
fileList = params.resources.split('\,');
现在对我有用,希望对你有帮助。
关于javascript - Highcharts 和 phantomjs 错误。找不到变量 Highcharts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38294099/