2017-03-21 11 views
0

現在、かなり大きな配列のデータを視覚化しようとしています。私の結果は、私は複数行のグラフが欲しいということです。d3.jsネストした配列からデータを正しく取得する方法

私の配列は、D3.jsの方が扱いやすいCSV形式です。 - 列ヘッダー
ショッピング23/7/90,9
デート23/3/96,3

カテゴリ、日付、周波数<:

私のデータは、このような何かを見て

Console.log(DataNest)

:私は複数行のチャートの各カテゴリを処理できるようにしたかった

個別ので、以下の何である別の配列に私のデータをマッピングすることを決定しました

私の問題は今、チャートラインを作成するための情報を取得する方法を知らないのですか?

ここに私のコード:

var dataNest = d3.nest() 
.key(function(d) {return d.category;}) 
.entries(data_out); 

dataNest.forEach(function(d,i) { 

var line = d3.line() 
.x(d3.values(dataNest).map(function(d) { return d.date; }).filter(function(key) { return key !== "date"; })) 
.y(d3.values(dataNest).map(function(d) { return d.frequency; }).filter(function(key) { return key !== "frequency"; })) 
; 

    chartGroup.append('path').attr('d',line(d)); 


      }); 

答えて

0

私の理解では、あなたがCSVやTSVを使用している場合、あなたのデータは、このような形式にするために必要なファイルということです:

category,date,frequency 
shopping,23/7/90,9 
shopping,28/7/90,9 
shopping,27/7/90,9 
shopping,23/8/90,9 
shopping,23/9/90,9 

とは対照的にこれに:一度正しい形式で

category,date,frequency shopping,23/7/90,9 
category,date,frequency shopping,28/7/90,9 
category,date,frequency shopping,27/7/90,9 
category,date,frequency shopping,23/8/90,9 
category,date,frequency shopping,23/9/90,9 

は、あなたがして、あなたはdとCSVをインポートした後のデータを参照することができなど.category、d.date、

ここでは、TSVを使用して偉大なマルチシリーズの折れ線グラフの良い例です。https://bl.ocks.org/mbostock/3884955

+0

こんにちは、フィードバックに感謝。私の謝罪ですが、これはSOFに関する質問を書式化することで悪いことになります。私は適切に質問をするつもりですが、それは私が自分のデータを表示している方法ですが、私は後で私の質問の写真ごとに入れ子にしました。これが私のデータフォーマットです。 –

+0

ああ、そうです。まあ、私は前にそのルートを行ったことがないので、入れ子配列関数を手助けすることができません。私が加えることができるのは、あなたがしたくない場合には、あなたがその余分なステップを行う必要があるかどうか分からないということです。データをマップする際に、各カテゴリと関連データをデータセットから取り出すことができます(選択した場合)。とにかく、私はもっと助けになることはできませんでした。 – Keith

+0

ご協力ありがとうございます。私はその特定のステップを回避するために見ていきます。 –

関連する問題