Ich versuche, David Bueza's Pie chart labels in einem Kreisdiagramm meiner eigenen zu implementieren. Ich habe versucht, den verwendeten Code an meine Bedürfnisse anzupassen und bisher erfolgreich zu sein. Doch etwas Interessantes passiert. Die eine Sache ist, dass meine Linien an der außerhalb des Kreisdiagramms beginnen, und der andere ist, dass zwei der Aufkleber seltsame Bögen in den Linien haben, die zu ihnen laufen.Implementieren Kreisdiagramm Etiketten wie von David Bueza
Ich habe eine plunk for you to look at erstellt, frage mich, ob jemand mir sagen kann, was das verursacht. Ich denke, beide der Probleme durch die pos
Kennung in diesem Stück Code verursacht werden:
return function(t) {
var d2 = interpolate(t);
var pos = outerArc.centroid(d2);
pos[0] = radius * 0.95 * (midAngle(d2) < Math.PI ? 1 : -1);
return [arc.centroid(d2), outerArc.centroid(d2), pos];
};
aber ich kann nicht finden, wie diese genau zu beheben.
EDIT1: Dank this question habe ich es geschafft, die Linien nur bis zum Rand des Kreises zu beheben. Dies hat mit der Reihenfolge der SVG-Zeichnung zu tun. Aktualisierte Plunkr: link. Das Problem mit dem Lichtbogen bleibt bestehen.
Ist das, was Sie wollten http://plnkr.co/edit/53SvO9ym6euMAwGfIpcU ? p = Vorschau – thatOneGuy
Es ist! Danke, dass du einen Blick darauf geworfen hast. Ich habe meinen Code entsprechend angepasst. – Yoeri
@thatOneGuy: Ich habe entschieden, dass ich eigentlich die Pfade an dem Punkt ausschneiden möchte, an dem sie sich mit den Scheiben schneiden. Ich habe dies mit '.attr (" clip-path "," .slices ") versucht, aber es hat nicht funktioniert. Irgendwelche Ideen? – Yoeri