3

私の目標: 複数の系列で HighStock チャートを描画したい。データは data.php から AJAX によって読み込まれます。data.php の出力は JSON-Array です

私の問題: JSON 配列からデータを取得する方法がわからない

出力は例えば

[[タイムスタンプ,値1,値2],[タイムスタンプ,値1,値2]]

シリーズ 1 は -> タイムスタンプと value1 である必要があります

シリーズ 2 は -> タイムスタンプと value2 である必要があります

これは私のコードです

// Draw the chart
$(function(){

        /* The chart is drawn by getting the specific data from "data.php".
         * The configuration settings are transmitted by GET-Method. The output is an JSON-Array.  */

        $.getJSON('data.php',
        function(data) {


        chart = new Highcharts.StockChart
        ({
        chart:  {  renderTo: 'chartcontainer', type: 'line'  },
        title:  { text: 'You see the data of the last hour!' },
        xAxis: {  type: 'datetime', title: { text: 'time'  } },
        yAxis: { title: { text: 'unit'  } },
        series: [{ name: 'series1', data: data },{ name: 'series2', data: data }],

        });
    });
});

私は変わらなければならないと思う

series: [{ name: 'series1', data: data },{ name: 'series2', data: data }],

しかし、私は何を知りません

4

1 に答える 1

1

配列のすべての項目を繰り返し処理し、data2 つの別個の配列にデータを入力します。

var series1 = [];
var series2 = [];
for (var i = 0; i < data.length; i++) {
  series1.push([data[0], data[1]);
  series1.push([data[0], data[2]);
}

次に、各シリーズ配列にタイムスタンプと値のペアがあります。

特に現在のjson作成を置き換えることができる場合は、phpでこれを行う方が効率的かもしれません。

于 2013-02-01T09:40:29.723 に答える