d3.behavior.zoom при перетаскивании дрожит, дрожит, прыгает и подпрыгивает
Я использую d3.behavior.zoom для реализации панорамирования и масштабирования в дереве, но он демонстрирует поведение, которое я бы описал как отскакивающую или числовую нестабильность. Когда вы начинаете перетаскивать, дисплей необъяснимо будет прыгать, пока не исчезнет. Код выглядит так:
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 + ")");
})
);
Есть ли лучший способ установить преобразование, которое не вызывает помехи этого типа?