2017-03-21 6 views
0

Ich versuche gerade, einige Daten aus einem ziemlich großen Array zu visualisieren. Mein Ergebnis ist, dass ich eine mehrzeilige Grafik möchte.Wie bekomme ich Daten von einem verschachtelten d3.js-Array?

Mein Array ist in Form von CSV, um besser von D3.js behandelt zu werden.

sahen meine Daten so etwas wie diese:

Kategorie, Datum, Frequenz < - Spaltenüberschriften
Einkaufen, 23/7/90,9
verabredet, 23/3/96,3

ich wollte einzeln jede Kategorie für mein Mehrliniendiagramm in die Lage sein zu handhaben, so beschlossen, meine Daten in ein anderes Array abzuzubilden, das ist das, was unten ist:

Console.log(DataNest)

Mein Problem ist jetzt, ich weiß nicht, wie Sie die Informationen abrufen, um meine Diagrammlinien zu erstellen?

Mein Code hier:

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)); 


      }); 

Antwort

0

Mein Verständnis ist, dass wenn Sie eine CSV verwenden oder eine TSV-Datei Ihre Daten in einem Format so sein muss:

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 

Im Gegensatz dies:

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 

Einmal im richtigen Format, können Sie dann können Sie die Daten verweisen, nachdem Sie die CSV als d importieren .category, d.date usw.

Hier ist ein gutes Beispiel eines großen Multi-Serie Liniendiagramm mit einem TSV: https://bl.ocks.org/mbostock/3884955

+0

Hallo, vielen Dank für das Feedback. Ich entschuldige mich, aber das liegt daran, dass ich schlecht mit Formatierungsfragen auf SOF bin. Ich werde meine Frage angemessen verbessern, aber so zeige ich meine Daten ursprünglich an, aber ich habe sie später nach dem Foto in meiner Frage verschachtelt. Das ist mein Datenformat jetzt. –

+0

Ah, ich verstehe. Nun, ich kann nicht mit den verschachtelten Array-Funktionen helfen, da ich diesen Weg vorher noch nie gegangen bin. Alles, was ich hinzufügen kann, ist, dass ich nicht sicher bin, ob Sie diesen zusätzlichen Schritt tun müssen, wenn Sie nicht wollen. Sie können jede einzelne Kategorie und die zugehörigen Daten aus Ihrem Datensatz ziehen, wenn Sie die Daten zuordnen (wenn Sie dies wünschen). Wie auch immer, Entschuldigung, ich könnte nicht mehr Hilfe sein. – Keith

+0

Danke für Ihre Hilfe. Ich werde einen Blick darauf werfen, diesen bestimmten Schritt zu umgehen. –

Verwandte Themen