将子节点附加到D3 sankey中的父节点

时间:2016-04-06 00:16:08

标签: javascript d3.js

目前,我正在努力将所有子节点聚集在一起形成一个矩形,而不是创建一个单独的父圆圈以供将来参考。以下是我正在研究的sankey图表的示例: bi-directional sankey chart by Neilos.

但是我无法理解这里用于折叠器的逻辑。例如:

collapser = svg.select("#collapsers").selectAll(".collapser")
    .data(biHiSankey.expandedNodes(), function (d) { return d.id; });

这将创建您将附加圆圈的collapser。现在,有没有什么方法可以将所有子节点附加到这个圆圈(通过使它足够大),这样我们可以通过图形显示所有子节点都属于同一个父类?

在默认的sankey代码的第433行,您会看到:

 collapserEnter.append("circle")
.attr("r", 100)
.style("fill", function (d) {
  d.color = colorScale(d.type.replace(/ .*/, ""));
  return d.color;
});

这是否意味着我可以尝试将子节点附加到此collapserEnter对象?如果没有,我们还有其他办法吗? 所有帮助将不胜感激。

0 个答案:

没有答案