1

検索して検索しましたが、まだ解決策が見つかりません。

サーバーからjsonを使用してHighchartsにデータを読み込もうとしています。これは私のサーバーから返されたjsonです:

   [{
    "x": "\/Date(1352674800000)\/",
        "y": 621
}, {
    "x": "\/Date(1352761200000)\/",
        "y": 646
}, {
    "x": "\/Date(1352847600000)\/",
        "y": 690
}, {
    "x": "\/Date(1352934000000)\/",
        "y": 688
}, {
    "x": "\/Date(1353020400000)\/",
        "y": 499
}]

これは私のハイチャートです:(私のjsfiddleから)

    var seriesData = [];
for (var i = 0; i < data.length; i++) {
   var dateString = data[i].x;
var x = dateString.replace(/\/Date\((\d+)\)\//, '$1');


    var y = data[i].y;


    seriesData.push([x, y]);

}
alert(seriesData);

var options = {
    chart: {
        renderTo: 'container'
    },
    xAxis: {        
        type: 'datetime',
        labels: {
            formatter: function() {
            var monthStr = Highcharts.dateFormat('%a', this.value);
            var firstLetter = monthStr.substring(0, 1);
            return firstLetter;
            }
        }
    },



    series: []
};

function myfunk() {
   options.series.push(seriesData);



    chart = new Highcharts.Chart(options);
}
myfunk();

しかし、私のデータは表示されていません。

私はjsfiddelを作りました:http: //jsfiddle.net/grVFk/12105/

編集:

現在は機能していますが、データポイントに間違った日付が表示されていますか?http://jsfiddle.net/dxCHB/18/

誰かが私を助けてくれるなら、私はとても感謝しています!:)

4

2 に答える 2

2

あなたはとても親しかった。シリーズ配列には、データ メンバーを持つオブジェクトが含まれている必要があります。

 series: [
    {
       data:[]
    }
 ]

次に、次を使用して設定できます。

function myfunk() {
    options.series[0].data = seriesData;

私はあなたのjsfiddleを修正しました: http://jsfiddle.net/dxCHB/

日付を数値でフォーマットする

seriesData.push([x/1, y]);
于 2013-03-09T13:33:30.510 に答える
0

データは数値である必要があるため、parseFloat()関数を使用して文字列を数値に変換できます。

于 2013-03-12T12:15:05.117 に答える