4

Highcharts のハウツーを読み、デモ ギャラリーをチェックし、Google を検索し、stackoverflow でまったく同じようなスレッドを X 個読みましたが、動作させることができません。

日付、値の形式でcsvファイルにデータを記録しています。

デートの様子はこちら

1355417598678,22.25
1355417620144,22.25
1355417625616,22.312
1355417630851,22.375
1355417633906,22.437
1355417637134,22.437
1355417641239,22.5
1355417641775,22.562
1355417662373,22.125
1355417704368,21.625

そして、これは私がコードを取得することができた距離です:

http://jsfiddle.net/whz7P/

これはチャートをレンダリングしますが、系列やデータはまったくありません。ハイチャートで解釈できるようにデータをフォーマットしているときに、私は物事を混乱させていると思います。

助けの手を差し伸べられる人はいますか?

4

4 に答える 4

4

つまり、次のデータ構造がありますよね?

1355417598678,22.25
1355417620144,22.25
1355417625616,22.312
1355417630851,22.375
1355417633906,22.437
1355417637134,22.437
1355417641239,22.5
1355417641775,22.562
1355417662373,22.125
1355417704368,21.625

次に、それを行の配列に分割するため、各配列項目は行になります。
次に、各行に対して次のようにします。

var items = line.split(';'); // wrong, use ','

しかし;、行にはありません。を使用して分割する必要があります,
結果は、各項目が次の構造を持つ配列である多次元配列になります。。という名前の変数に格納されdataます。

"1355417598678","22.25" // date in utc, value

これは各シリーズの予想データであるため、に直接渡すことができますserie

var serie = {
    data: data,
    name: 'serie1' // chose a name
}

結果は、動作するチャートになります。

したがって、すべてを次のように再開できます。

var lines = data.split('\n');
lines = lines.map(function(line) {
    var data = line.split(',');
    data[1] = parseFloat(data[1]);
    return data;
});

var series = {
    data: lines,
    name: 'serie1'
};
options.series.push(series);
于 2012-12-13T21:26:53.100 に答える
1

line.split部分を見てください:

$.get('data.csv', function(data) {
        // Split the lines
        var lines = data.split('\n');
        $.each(lines, function(lineNo, line) {
            var items = line.split(';');

サンプルのCSVデータにあるカンマ(、)ではなくセミコロン(;)で分割しようとしているようです。

于 2012-12-13T21:25:37.870 に答える
0

csvファイルをアップロードしていただけますか?元の投稿で書いたことと同じですか?同じ問題に遭遇しましたが、データ ファイルにエラーがあることがわかりました。

于 2013-08-07T20:18:49.460 に答える