Ajax highcharts PieChart不显示数据

时间:2016-08-03 22:28:46

标签: json ajax laravel highcharts

这是我的代码:

$.ajax({
url: 'dashboard/gender',
type: 'post',
async: true,
dataType: "json",
success: function (data) {
   visitorData(data);
}
});

function visitorData (data) {
$('#gender-pie').highcharts({
 chart: {
             plotBackgroundColor: null,
             plotBorderWidth: null,
             plotShadow: false,
             type: 'pie'
         },
         title: {
             text: 'Genders'
         },
         tooltip: {
             pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
         },
         plotOptions: {
             pie: {
                 allowPointSelect: true,
                 cursor: 'pointer',
                 dataLabels: {
                     enabled: false
                 },
                 showInLegend: true
             }
         },
series: data,
});
}

以下是回复:{“男性”:9,“女性”:2}

我的控制器是200 ok。正确传递数据。但是数据并没有出现在我的div中。标题显示正确。

1 个答案:

答案 0 :(得分:1)

系列数据的JSON格式不正确。它的格式应该是这样的:

series: [{
    data: [{
        name: 'Males',
        y: 9
    }, {
        name: 'Females',
        y: 2
    }]
}]

Working JSFiddle example