我已经为此转了几个小时,并用尽了所有类似的 stackoverflow 线程和 highcharts 文档,所以希望有人能提供帮助。
我正在尝试绘制一个具有性别划分的饼图。我以前使用过折线图,所以我的数据格式为 x 和 y 轴,如下所示:
[{"y":"Mr","x":"145"},{"y":"Miss","x":"43"},{"y":"Mrs","x":"18"},{"y":"Ms","x":"2"}]
这让我到了某个地方,我可以利用 json 并提取整数,但我一生都无法获得与数字相关的标题......
function genderData() {
$.getJSON('/statsboard/gender', function(data_g) {
$.each(data_g, function(key_g, val_g) {
obj_g = val_g;
genderChart.series[0].addPoint(parseInt(obj_g.x));
//genderChart.xAxis[0].categories.push(obj_g.y);
});
});
}
然后我只是调用了函数genderData,如下所示:
genderChart = new Highcharts.Chart({
chart: {
renderTo: 'gender',
events: {
load: genderData
}
}
title: {
text: 'Gender Split'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: false
},
showInLegend: true
},
},
series: [{
type: 'pie',
name: 'Gender Split',
data: []
}]
});
所以我最终得到了一个准确的图表,但没有标签,它们只会默认为“切片”......
如此接近但没有雪茄;-)
Soooo 我根据文档更改了我的服务器端代码以返回以下格式:-),现在返回以下内容:
[{"Mr":"145"},{"Miss":"43"},{"Mrs":"18"},{"Ms":"2"}]
这对我来说很明显,但是,唉,当我尝试在 js 代码上适应这一点时,一切都崩溃了。
我一直在看这个: Write JSON parser to format data for pie chart (HighCharts)
但无法在这里应用适合我的情况的做法。有人可以帮忙吗?