D3 js线重叠节点

Abz*_*tov 1 d3.js force-layout

我正在做强制布局,在事件点击我添加新节点并按行连接.但是线重叠了节点.为什么?我的代码显示为http://jsfiddle.net/WRGtL/

function click(d) {
  if (d3.event.defaultPrevented) return; // ignore drag
  //alert("clicked");
  var d = {id:"d"};
  nodes.push(nodeId[index]);
  if(index==0)
  links.push({source: a, target: nodeId[index]});
      else
      links.push({source: nodes[1], target: nodeId[index]});
  index++;
  start();
}
Run Code Online (Sandbox Code Playgroud)

Ste*_*yer 6

在SVG中,元素Z顺序是它们在文件中出现的顺序.让所有线条显示在圆圈下方的最简单方法是将所有线条和所有圆圈分组在各自的组中,并让这些组定义Z顺序.

我简单地添加两个组linksGnodesG该元素将被创建:

var linkG = svg.append("g"),
    nodeG = svg.append("g");

var node = nodeG.selectAll(".node"),
    link = linkG.selectAll(".link");
Run Code Online (Sandbox Code Playgroud)

看看JSFiddle演示.

编辑:忘了保存小提琴.链接已修复.