我正在使用Highcharts Sunburst来解决一个非常奇怪的问题。 最重要的是,请记住我已经验证了我的JSON并在JSFiddle演示中测试它(在文档中找到),一切正常。
这是我的问题:
我得到的数据是这样的:
var data = sessionStorage.getItem('data_fap');
var parsed_data = JSON.parse(data);
var chart_data = parsed_data.data;
(我的JSON看起来像:{data: [{id: "0", parent: "", name: " ", desc: " ", value: " "},...]}
)
如果图表构造函数中使用了chart_data,则没有图表,没有错误。
如果我这样设置我的var:
var data = [{id: "0", parent: "", name: " ", desc: " ", value: " "},...]};
在图表构造函数中使用它,一切正常。
我以为它可能来自我的图表选项,所以我从JSFiddle复制/粘贴一个,仍然没有工作......
这是我完整的图表生成代码:
var data = sessionStorage.getItem('data_fap');
var parsed_data = JSON.parse(data);
var new_data = parsed_data.data;
// Splice in transparent for the center circle
Highcharts.getOptions().colors.splice(0, 0, 'transparent');
Highcharts.chart('graph_metier', {
chart: {
height: '100%'
},
title: {
text: 'Domaines et familles professionnels'
},
subtitle: {
text: ''
},
series: [{
type: "sunburst",
data: new_data,
allowDrillToNode: true,
cursor: 'pointer',
dataLabels: {
format: '{point.name}',
filter: {
property: 'innerArcLength',
operator: '>',
value: 16
}
},
levels: [{
level: 1,
levelIsConstant: false,
levelSize: {
unit: 'percentage',
value: 30
}
},{
level: 2,
colorByPoint: true
},
{
level: 3,
colorByPoint: true
}]
}],
plotOptions: {
series: {
events: {
click: function (event) {
if(event.point.parent != "0"){
}
}
}
}
},
tooltip: {
formatter: function(e){
if(e.chart.hoverPoint.options.id == 0){
return false;
}
else
{
return '<b>' + e.chart.hoverPoint.options.name + '</b> (code: ' + e.chart.hoverPoint.options.id + ')<br>' + e.chart.hoverPoint.options.desc;
}
}
}
});
如果有人能帮我理解这个烂摊子,我会非常感激:)