2017-10-30 1 views
-2

Verwendung von dc.js Beispiel (http://dc-js.github.io/dc.js/examples/heat.html) Ich habe es geschafft, das Layout mit einem geänderten Datensatz zu bringen. Das Problem, mit dem ich es hier zu tun habe, ist nicht zu wissen, wie man die Werte sortiert.Sortierung Heat Map in dc.js

Ich habe 3 Felder in meinem Dataset: Day_Name, Time, Values

ich meinen Tag-Namen in der csv als "Sun" habe, "Mon", "Di", "Mi", etc .. und Zeit als 00: 00, 01:00, 02:00, 03:00 bis 23:00 ..

Welchen Teil des Codes sollte ich ändern, um die Werte zu sortieren? Bitte schlagen Sie mir vor oder raten Sie mir, meinen Code zu korrigieren.

Hier ist mein Code in a fiddle.

Antwort

0

Auf der Heatmap, sind die Schlüssel einer Achse (z. Day_name) und die Werte sind die anderen (Time)

Sie die Acccessor Funktionen

.keyAccessor (function (d) verwendet werden können {return + d.key [0];}) .valueAccessor (function (d) {return + d.key [1];})

und Verwendung Bestell benötigt, wenn

+0

Ich habe versucht und nicht funktioniert, und ich nehme an, dass wir + vor Schlüssel [0] und Schlüssel [1] nicht verwenden können, da es eine Dimension ist. – SSB

+0

+ stellt einfach sicher, dass wir die Variable auf eine Ganzzahl umwandeln. Wenn es nicht funktioniert, heißt das, dass Sie keine Zahlen angeben, es geht nicht darum, eine Dimension zu sein oder nicht – Xavier

+0

Ja, ich gebe keine Zahlen, ich gebe String-Werte an, wie bereits erwähnt Day_name: (So.Mo., Di, Mi, Do, Fr, Sa). – SSB

1

I änderte meinen Datensatz, indem der Tag Name wie 1, 2, 3, 4, 5, 6, 7 für die Wochentage und enthalten einen HTML-Code a s eine Legende zu sagen, dass 1 = Sonntag, 2 = Montag und so weiter ... Für jetzt gehe ich mit dieser Lösung. Wenn ich auf die Week_days komme, werde ich meine Antwort aktualisieren.

+0

Ich denke, das ist die beste Lösung zum Sortieren. Sie können [.colsLabel()] (http://dc-js.github.io/dc.js/docs/html/dc.heatMap.html#colsLabel) oder rowsLabel verwenden, um die Bezeichnungen zu ändern. – Gordon