1

我正在尝试使用 Highcharts 制作图表,但无法弄清楚为什么我的数据格式不正确。

当我使用以下数组作为数据时,我的图表完成了他的工作。

fake = [['Joe', 0.1576]];

但是当我试图通过推动这样的元素来制作一个时,它不会用它来制作图表。

name = 'Joe';
percentage = 0.1576;
element = [];
element.push(name, percentage);
graph.push(element);

当我通过让它们进入控制台来比较它们时,它们看起来完全一样。但是导致问题的它们之间的区别在哪里?

编辑:

感谢您的帮助,我找到了应该出错的地方,可能是 $.getJSON 和 var 'graph' 设置不正确?

    graph = [];
$.getJSON("graph.php",function(data){
    /* Loop through array */
    for (var i = 0; i < data.length; i++) {
        graph.push([data[i][1], Number(data[i][3])]);
     }
});

$(function () {
    $('#container').highcharts({
        chart: {
            plotBackgroundColor: null,
            plotBorderWidth: null,
            plotShadow: false
        },
        title: {
            text: 'Individuele productprijzen uiteengezet tegen de totaalprijs'
        },
        tooltip: {
            pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
        },
        plotOptions: {
            pie: {
                allowPointSelect: true,
                cursor: 'pointer',
                dataLabels: {
                    enabled: true,
                    color: '#000000',
                    connectorColor: '#000000',
                    format: '<b>{point.name}</b>: {point.percentage:.2f} %'
                }
            }
        },
        series: [{
            type: 'pie',
            name: 'Browser share',
            data: graph
        }]
    });
});

它获取的数据是使用 PHP 中的 json_encode 生成的 JSON 格式。

4

0 回答 0