Mir ist klar, dass diese Frage schon einmal gestellt wurde, aber ich kann nicht auf den Grund gehen.
Hier ist mein Diagramm ... Ссылка
Ich möchte nur, dass die Münze hinter dem Graphen rendert. Ich weiß, dass D3 in der Reihenfolge rendert, in der sie angehängt sind.
Ich habe versucht, die Münze wieder anzubringen, aber es scheint nicht zu funktionieren.
Ich habe versucht, die Reihenfolge neu zu bestimmen, wenn Dinge im DOM angehängt werden, aber immer Fehler bekommen, wahrscheinlich weil Variablen aufgerufen werden, bevor sie definiert werden usw.
Kann mir jemand ein Beispiel geben, wie ich das mit meinem Code beheben kann? Ich möchte nicht, dass du die Arbeit für mich tust, aber ich habe mir so lange die Haare ausgerissen, ich kann nicht scheinen, dass andere Leute Beispiele auf meine anwenden.
Danke
Ich würde empfehlen, einige "Ebenen" mit svg g
elements zu erstellen, was für "group" steht.
Wenn Sie Ihr Diagramm rendern, können Sie zuerst Ihre Ebenen definieren:
%Vor%Wenn Sie dann neue Elemente anhängen, können Sie entscheiden, auf welcher Ebene sie sich befinden sollen, und es spielt keine Rolle, in welcher Reihenfolge Sie sie zuweisen, da die Gruppenelemente bereits zum DOM hinzugefügt wurden und geordnet sind . Zum Beispiel:
%Vor%In diesem Fall wird der rote Kreis über dem blauen Quadrat angezeigt, obwohl das blaue Quadrat zuletzt erstellt wurde. Dies liegt daran, dass der Kreis und das Quadrat Untergruppen verschiedener Gruppenelemente sind, die in einer vordefinierten Reihenfolge angeordnet sind.
Hier ist ein FIDDLE des obigen Beispiels, damit Sie es in Aktion sehen können.
Dies sollte eine Menge Rätselraten darüber aufkommen lassen, wann bestimmte Elemente zu Ihrem Diagramm hinzugefügt werden sollen, und es hilft auch, Ihre Elemente in einer logischeren Anordnung zu organisieren. Hoffnung, die hilft, und viel Glück.
Tags und Links javascript jquery svg d3.js