d3.js强制布局:组/捆绑节点 - 链接断开

时间:2015-03-11 13:18:59

标签: javascript svg d3.js force-layout

我在@Mark的帮助下改编了Ger Hobbelt的原创作品,以便在之前的Stackoverflow帖子中为扩展节点添加标签:

Add labels to nodes in Hobbelt's "Group/Bundle Nodes" D3 force layout example?

当我将自己的数据添加到返工的示例中时,我发现了最奇怪的问题。看下面的新小提琴。展开橙色节点。然后展开蓝色。节点18从橙色船体内分离(节点18的链路消失!)并且在节点25和13之间的额外链路中似乎存在不可见节点。如果再次折叠蓝色船体,则链路正常显示。链接的计算方式一定存在问题,但我看不到它。知道造成这种行为的原因是什么吗?

https://jsfiddle.net/NovasTaylor/7yu2g1b2

  link.enter().append("line")
      .attr("class", "link")
      .attr("x1", function(d) { return d.source.x; })
      .attr("y1", function(d) { return d.source.y; })
      .attr("x2", function(d) { return d.target.x; })
      .attr("y2", function(d) { return d.target.y; })
      .style("stroke-width", function(d) { return d.size || 1; });

是否与定义链接和节点的顺序有关?请参阅link.enter()后面的小提琴中的代码,其中定义了var g和g.append。

0 个答案:

没有答案