d3.behavior.zoom tremula, balança, pula e salta ao arrastar

Eu estou usando o d3.behavior.zoom para implementar o deslocamento e o zoom em um layout de árvore, mas ele está exibindo um comportamento que eu descreveria como instabilidade saltante ou numérica. Quando você começa a arrastar, a tela irá inexplicavelmente pular até que ela desapareça. O código é assim:

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

Existe uma maneira melhor de definir a transformação que não causa esse tipo de interferência?

questionAnswers(1)

yourAnswerToTheQuestion