Javascript 如何在dagre-d3中重置图形位置和比例

Javascript 如何在dagre-d3中重置图形位置和比例,javascript,jquery,svg,d3.js,dagre-d3,Javascript,Jquery,Svg,D3.js,Dagre D3,在某些情况下,我需要重新加载图形并重新绘制图形,并将其设置为初始位置和比例,而无需刷新页面(使用jquery和ajax)。我使用的是上的示例代码(不是交互式代码,是在指南中编写的代码),并使用动态查询加载边和节点 但是,当我重新加载节点和边并再次进行渲染时,$(“g.zoom”)的位置和比例保持不变。我尝试使用jQuery编辑$(“g.zoom”)的属性“transform”和“scale”属性,但当用户拖动或缩放图形时,比例和位置会发生更改 我尝试了重置svg的解决方案 var svg =

在某些情况下,我需要重新加载图形并重新绘制图形,并将其设置为初始位置和比例,而无需刷新页面(使用jquery和ajax)。我使用的是上的示例代码(不是交互式代码,是在指南中编写的代码),并使用动态查询加载边和节点

但是,当我重新加载节点和边并再次进行渲染时,$(“g.zoom”)的位置和比例保持不变。我尝试使用jQuery编辑$(“g.zoom”)的属性“transform”和“scale”属性,但当用户拖动或缩放图形时,比例和位置会发生更改

我尝试了重置svg的解决方案

  var svg = d3.select("svg > g");
  svg.selectAll("*").remove();
但在此之后,缩放不可用

此外,我想知道是否有任何方法可以:

  • 计算适当的比例以显示整个图形(有时我需要绘制一个非常大的图形)
  • 双击图像,它将被放大到一个固定的大小,而不是变得越来越大,再次双击,它将回到可以查看整个图形的比例

  • 我希望我已经明白了。:)

    你有这方面的最新消息吗?