2016-06-27 2 views
0

Ich möchte wissen, wie vordefinierte Ordinalwerte für parallele Koordinaten festgelegt werden? Zum Beispiel (here) Wenn wir das Auto mit "blauen" Wert entfernen, entfernen Sie die D3 für uns das blaue Etikett, aber ich möchte zuerst meinen Satz von Etiketten definieren (blau, rot, grün) und dann D3 blau zeigen Etikett ohne Verbindung (wenn ich das blaue Auto entferne).Wie werden vordefinierte Ordinalwerte für parallele Koordinaten in D3.js festgelegt?

{"name": "AMC Concord DL 6", "weight (lb)":3265, "0-60 mph (s)": 18.2, "year": 79, "colour": "blue"} 

Antwort

1

Derzeit Sie die Einstellung der Domäne (dh alle möglichen Farbwerte) wie folgt aus:

y[d] = d3.scale.ordinal() 
    .domain(cars.map(function(p) { return p[d]; })) 

also von Natur aus, wenn cars kein blaues Auto enthalten, diesen Wert doesn mach es nicht in die Domain.

Da Sie nach dem Farbwert fragen, der auch dort zu finden ist, wenn er nicht in cars ist, nehme ich an, dass Sie die Werte der Domäne richtig hart codieren (weil sonst kein Weg für "Blau" ist) Datensatz/Domäne). Also, hart zu codieren, ersetzen Sie den .domain() Aufruf oben mit:

y[d] = d3.scale.ordinal() 
    .domain(['blue', 'green', 'red']) 

updated jsFiddle See.