d3.js树形布局在创建时未展开

时间:2013-09-12 20:14:43

标签: d3.js

到目前为止,我一直在挖掘d3.js几天,我喜欢它。

我在搜索树形布局时进入了它,因为我需要一个用于我的项目。我来到这里example 我已经完成了数据获取和时尚方面以适应我的网站。

我的问题,因为我无法逃避它是:我怎么能告诉树不要在开始时扩大?我希望用户根据需要点击节点,因为我总是发现自己一开始就没有点击,只是为了获得“耀斑”节点。

提前感谢,如果您知道如何操作,您可以添加代码或重新处理示例中的代码,然后将其应用于我正在处理的项目中。

1 个答案:

答案 0 :(得分:1)

该示例使用以下代码切换打开或关闭的孩子:

// Toggle children on click.
function click(d) {
  if (d.children) {
    d._children = d.children;
    d.children = null;
  } else {
    d.children = d._children;
    d._children = null;
  }
  update(d);
}

因此,您可以将原始数据集从children更改为_children,以便在您希望开始折叠的任何级别上初始化要在特定级别关闭的树。

例如(来自flare.json):

{
 "name": "flare",
 "_children": [
  {
   "name": "analytics",
   "_children": [
    {
     "name": "cluster",
     "_children": [
      {"name": "AgglomerativeCluster", "size": 3938},
      {"name": "CommunityStructure", "size": 3812},
      {"name": "HierarchicalCluster", "size": 6714},
      {"name": "MergeEdge", "size": 743}
     ]
    }
...
...