Warum wird das erste Link-Objekt übersprungen?

8

Ich habe eine ziemlich einfache Visualisierung, die ich zusammensetzen möchte, aber ich habe ein kleines Problem mit der Verarbeitung.

Wenn ich das folgende Snippet verwende, funktioniert alles wie erwartet:

%Vor%

Wenn ich dies jedoch wechsle, benutze einen etwas anderen Pfad:

%Vor%

Dann fehlt aus irgendeinem Grund der erste "Link". Kann jemand vorschlagen, warum das sein könnte? Hier ist ein JSFiddle hier . Der Effekt, der erwartet wird, ist, dass ich keine schönen abgerundeten Linien habe, wie ich will.

    
Ian 14.05.2013, 13:16
quelle

1 Antwort

10

Das Problem ist, dass D3 Ihre Auswahl .selectAll("path") standardmäßig auf Ihre Daten per Index anpasst und es bereits einen Pfad im SVG gibt (in defs ). Das heißt, das erste Datenelement stimmt mit dem ersten Pfad im SVG überein, der bereits vorhanden ist. Daher ist es nicht in der .enter() -Auswahl.

Um dies zu beheben, geben Sie eine Funktion im optionalen zweiten Argument von .data() an, um D3 mitzuteilen, wie Elemente zu finden sind, z. B.

%Vor%     
Lars Kotthoff 14.05.2013, 13:51
quelle

Tags und Links