d3.behavior.zoom tiembla, sacude, salta y rebota al arrastrar

Estoy utilizando el d3.behavior.zoom para implementar la panorámica y el zoom en un diseño de árbol, pero muestra un comportamiento que describiría como rebote o inestabilidad numérica. Cuando empieces a arrastrar, la pantalla saltará inexplicablemente hasta que simplemente desaparezca. El código se ve así:

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 + ")");
    })
);

¿Hay una mejor manera de establecer la transformación que no cause este tipo de interferencia?

Respuestas a la pregunta(1)

Su respuesta a la pregunta