Javascript D3.js树自定义节点重叠

Javascript D3.js树自定义节点重叠,javascript,d3.js,Javascript,D3.js,我在论坛上搜索了类似的问题,但什么也没找到 我用它作为出发点 上面是我树的底部。在叶节点(黄色)上,我必须调整它们的大小,以容纳更多的元素,而我不知道预先有多少元素。 结果是一个节点与其他节点重叠 希望你们能在这里帮助我: 1/如何调整节点大小而不影响节点之间的间距 2/即使我可以设法使黄色分支上的节点不重叠,但当我展开绿色分支上的节点时,它们仍然与黄色侧的节点重叠 3/还是有更好的方法来实现这一点 谢谢 对于那些需要做类似事情的人来说,是最好的选择 function separation (

我在论坛上搜索了类似的问题,但什么也没找到

我用它作为出发点

上面是我树的底部。在叶节点(黄色)上,我必须调整它们的大小,以容纳更多的元素,而我不知道预先有多少元素。 结果是一个节点与其他节点重叠

希望你们能在这里帮助我:

1/如何调整节点大小而不影响节点之间的间距

2/即使我可以设法使黄色分支上的节点不重叠,但当我展开绿色分支上的节点时,它们仍然与黄色侧的节点重叠

3/还是有更好的方法来实现这一点


谢谢

对于那些需要做类似事情的人来说,是最好的选择

function separation (a, b) {
   return a.parent == b.parent ? 1 : 2; 
}
阅读文档时会感到困惑(数字1,2是什么意思?),但在阅读了一些文章后,下面是:

节点之间的距离将是该数目乘以节点宽度的结果

所以,您要做的是将默认节点的大小设置为 [1,您的默认高度]

然后,您将返回节点的宽度,而不是返回1或2。这就是将初始节点的宽度设置为1的原因。


就这样。希望这能有所帮助:)

对于那些需要做类似事情的人来说,是一个不错的选择

function separation (a, b) {
   return a.parent == b.parent ? 1 : 2; 
}
阅读文档时会感到困惑(数字1,2是什么意思?),但在阅读了一些文章后,下面是:

节点之间的距离将是该数目乘以节点宽度的结果

所以,您要做的是将默认节点的大小设置为 [1,您的默认高度]

然后,您将返回节点的宽度,而不是返回1或2。这就是将初始节点的宽度设置为1的原因。

就这样。希望有帮助:)