0

コントローラーの ajax 関数がページに正しくヒットし、チャートが読み込まれますが、空白で、データをチャートに到達させることができません。私のコードは以下です。ハイチャートの使用。ありがとう!

コントローラ:

public function ajax_get_chart() {
      $series_data[] = array('series' => array(array('name' => 'John', 'data' => array(5, 7, 4))));
      $series_data[] = array('series' => array(array('name' => 'Tony', 'data' => array(5, 7, 4))));
      die (json_encode($series_data)); 

    }

Javascript:

var chart;

$(document).ready(function() {

    $.ajax({
      url: "/chart/ajax_get_chart", // the URL of the controller action method
      dataType: "json",
      success: function(result) 
      {

        chart = new Highcharts.Chart({
            chart: {
                renderTo: 'container',
                defaultSeriesType: 'bar'
            },
            title: {
                text: 'Stacked bar chart'
            },
            xAxis: {
                categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']
            },
            yAxis: {
                min: 0,
                title: {
                    text: 'Total fruit consumption'
                }
            },

            legend: {
                backgroundColor: '#FFFFFF',
                reversed: true
            },
            tooltip: {
                formatter: function() {
                    return ''+
                        this.series.name +': '+ this.y +'';
                }
            },
            plotOptions: {
                series: result
            }
        });
      }
    });

});
4

2 に答える 2

0

チャート構成seriesの代わりに追加する必要があります。plotOptions

このような:

series: [{
    name: 'test',
    data: result
}]
于 2013-06-06T17:00:41.187 に答える
0

データを plotOptions.series に渡しても何も起こりません。

あなたの結果は「シリーズ」の中に入るはずです。

chart = new Highcharts.Chart({
            chart: {},
            title: {},
            xAxis: {},
            yAxis: {},
            legend: {},
            tooltip: {},
            plotOptions: {},
            series: result
        });

「結果」が次のような形式であるとします。

result = [{
        name: "One",
        data: [1, 2, 3, 4]
    }, {
        name: "Two",
        data: [1, 2, 3, 4]
    }
];
于 2013-06-06T15:55:47.863 に答える