d3.behavior.zoom zittert, wackelt, springt und springt beim Ziehen

Ich verwende d3.behavior.zoom, um das Schwenken und Zoomen in einem Baumlayout zu implementieren, aber es zeigt ein Verhalten, das ich als Springverhalten oder numerische Instabilität beschreiben würde. Wenn Sie mit dem Ziehen beginnen, springt die Anzeige unerklärlicherweise herum, bis sie einfach verschwindet. Der Code sieht folgendermaßen aus:

var svg = target.append ("g");
...
svg.call (d3.behavior.zoom()
    .translate ([0, 0])
    .scale (1.0)
    .scaleExtent([0.5, 2.0])
    .on("zoom", function() {
        svg.attr("transform","translate(" + d3.event.translate[0] + "," +  d3.event.translate[1] + ") scale(" +  d3.event.scale + ")");
    })
);

Gibt es eine bessere Möglichkeit, die Transformation festzulegen, die diese Art von Interferenz nicht verursacht?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage