添加新数据时,路径上的曲线增加太多

时间:2018-10-09 13:55:54

标签: javascript d3.js

我设法弄个例子,重复了我当前面临的问题:http://jsfiddle.net/gp0u5rLu/71/

Overly curved paths

从图像中可以看到,路径太弯曲了。您可以通过点击添加数据按钮来复制它。我确定这与弯曲链接的配置方式有关。

我遵循以下示例:https://bl.ocks.org/mbostock/4600693

然后在其中创建一个看起来像中间节点的中间节点,该中间节点用作弯曲路径的点。

以下是创建双向链接数据集的一些逻辑:

edges.forEach(function(link) {
  var s = link.source = nodeById.get(link.source),
    t = link.target = nodeById.get(link.target),
    i = {}; // intermediate node
  nodes.push(i);
  edges.push({
    source: s,
    target: i
  }, {
    source: i,
    target: t
  });
  bilinks.push([s, i, t]);
});

您可以看到一个空节点已添加到数据集。但是,当您单击按钮添加数据时会发生什么,我不太了解。

我想也许是在创建相同的中间节点,从而将路径拉得更远,但是我不太确定这是如何工作的。

我需要弯曲的链接,因为在我的数据集中,两个节点之间可能有多个链接,所以我需要一种查看所有链接的方法。

任何帮助将不胜感激,谢谢。

0 个答案:

没有答案