Javascript 按编程方式缩放到力定向图中的节点
我试图在d3中的力定向图中实现“缩放到节点”行为。用户应该能够单击链接,从而触发缩放到图形布局中特定节点的转换 使用该方法,正常缩放(例如,使用鼠标/触摸事件)按预期工作 我尝试以编程方式设置平移向量和缩放,然后手动触发缩放事件,但我不确定如何计算平移向量,以便使用指定节点的x和y坐标将其居中Javascript 按编程方式缩放到力定向图中的节点,javascript,svg,d3.js,coffeescript,Javascript,Svg,D3.js,Coffeescript,我试图在d3中的力定向图中实现“缩放到节点”行为。用户应该能够单击链接,从而触发缩放到图形布局中特定节点的转换 使用该方法,正常缩放(例如,使用鼠标/触摸事件)按预期工作 我尝试以编程方式设置平移向量和缩放,然后手动触发缩放事件,但我不确定如何计算平移向量,以便使用指定节点的x和y坐标将其居中 zoomToNode = (n) -> zoom.scale(4) # scaleExtent() = [1,10] # how do i calculate
zoomToNode = (n) ->
zoom.scale(4) # scaleExtent() = [1,10]
# how do i calculate the translate vector here?
zoom.event(vis)
我也不知道,如何在转换中使用这个
谢谢你的帮助
更新:
我仍然不知道如何计算正确的平移向量。。看见在第290行中计算平移向量。请注意,该元素是响应的,可能会造成一些问题。可能重复感谢,此处显示的示例使我走上了正确的轨道。然而,我仍然不知道如何计算平移向量,尽管它应该比给定的例子更简单,因为我不需要考虑不同的边界框大小。