2016-09-16 2 views
1

Ich versuche, das klassische Pie Chart Update, V Beispiel mit der neuesten D3 v4 umzuschreiben. Leider werden die Attribute der Pfade d nicht berechnet.D3 v4 Kuchendiagramm Update leer `d` Attribute

Hier ist meine gist und die block. Bisher habe ich nur geändert

  • d3.scale.category20() ->d3.scaleOrdinal(d3.schemeCategory20)

  • d3.layout.pie() ->d3.pie()

  • d3.svg.arc() ->d3.arc()

Wie Sie im DOM sehen die Wege sind da, aber sie haben keine d Attribute.

Irgendwelche Ideen?

+0

Sieht aus, als ob etwas mit 'path = path.data (data1, key);' funktioniert. In v3 würde dies zunächst drei 'path' Elemente in einem Array zurückgeben, aber in v4 bekommt man etwas ganz anderes (' zi {_groups: Array [1], _parents: Array [1], _enter: Array [1], _exit: Array [1]} ') –

Antwort

3

Ich denke, Sie haben ein paar Probleme, vor allem nicht das Attribut d eingeben.

Hier ist ein Kern zeigt die Änderung https://bl.ocks.org/tezzutezzu/c2653d42ffb4ecc01ffe2d6c97b2ee5e

In meinem Code gibt es immer noch einen Fehler, die die benachbarten Bögen auf Änderung bei der Berechnung, aber dies sollte Ihr erstes Problem lösen.

Die Exit-Animation funktioniert jetzt auch. Ich musste sicherstellen, dass Objekte vor der Interpolation kopiert wurden.

bearbeiten: Grammatik

+0

Haben Sie das ursprüngliche Beispiel gesehen? Sie legen das Attribut "d" nicht speziell fest. – zemirco

+0

Ja, ich glaube, das liegt an den Änderungen in der Auswahl in v4. Sehen Sie diese Folie für die Unterschiede: https://iros.github.io/d3-v4-whats-new/#20 – Danilo

+0

Ich sehe. Wenn Sie Ihren Fehler beheben können, werde ich Ihre Antwort als akzeptiert markieren :) – zemirco