Javascript d3缩放侦听器不考虑编程缩放

Javascript d3缩放侦听器不考虑编程缩放,javascript,d3.js,Javascript,D3.js,首先,当附加到“缩放”事件时(例如使用鼠标),我可以使缩放行为正常工作。 我还可以通过编程进行缩放(例如,由文档中的更新触发) 但是如果我有一个缩放事件,-->那么编程缩放你需要调用缩放函数上的转换,就像这样 svg.transition().duration(300).call(zoomFunc.transform, d3.zoomIdentity.translate(0, 0).scale(1)); 其中zoomFunc就是这样的 var zoomFunc = d3.zoom()

首先,当附加到“缩放”事件时(例如使用鼠标),我可以使缩放行为正常工作。 我还可以通过编程进行缩放(例如,由文档中的更新触发)


但是如果我有一个缩放事件,-->那么编程缩放你需要调用缩放函数上的转换,就像这样

svg.transition().duration(300).call(zoomFunc.transform, d3.zoomIdentity.translate(0, 0).scale(1));
其中
zoomFunc
就是这样的

var zoomFunc = d3.zoom()
    .extent([[0, 0], [600, 600]])
    .scaleExtent([0.1, 5000])
    .on("zoom", zoomed);

svg.call(zoomFunc)

我还做了一个演示。

效果很好!!!!。。谢谢,先生,我可能自己找不到它!非常感谢。。
svg.transition().duration(300).call(zoomFunc.transform, d3.zoomIdentity.translate(0, 0).scale(1));
var zoomFunc = d3.zoom()
    .extent([[0, 0], [600, 600]])
    .scaleExtent([0.1, 5000])
    .on("zoom", zoomed);

svg.call(zoomFunc)