Ich habe eine bestehende Svg mit einer Reihe von Polygonen. Jedes Polygon hat eine eindeutige ID, und mit jeder ID habe ich einige zugehörige Daten.stellen Sie sicher, d3 Datenelement entspricht ID?
Meine Frage ist: Wenn ich die natürliche d3 trete:
d3.selectAll("polygon").data(array_of_data)
Gibt es trotzdem, um sicherzustellen, dass das Datenelement mit einem Polygon verbunden ist, ist die richtige?
Oder muss ich nur die Reihenfolge der array_of_data
die gleiche wie die Reihenfolge der ausgewählten Polygone?
Wie geben Sie an, welches Element mit dem angegebenen Schlüssel übereinstimmen soll? Wie weiß d3, dass es das ID-Feld ist, das d.id passen sollte? oder tut es? – Maus
Alle d3 bedeutet, dass immer dasselbe Element für ein bestimmtes Datum verwendet wird. Das ID-Attribut des Elements wird nicht gesetzt, wenn Sie das fragen. Es wird nur intern ein Element dem angegebenen Schlüssel zugeordnet. Wenn Ihre Daten alle ID-Eigenschaften haben, verwenden Sie den obigen Code. Wenn Ihre Daten stattdessen eine andere Möglichkeit haben, die eindeutige ID zu bestimmen, können Sie dies stattdessen innerhalb des Callbacks tun: 'function (d) {return d.getUniqueId(); } ' –
also, wenn meine Polygone bereits einen Namen haben, gibt es keine Möglichkeit, d3 zu sagen, dass das Datum mit dem gleichen Namen mit diesem Polygon übereinstimmt? – Maus