如何在G6中精确控制树图的节点展开层级并避免占位?

新手上路,请多包涵

andv g6:我使用下面的代码,默认只展开前三层数据,但图上面,子元素还是占位了,请问怎么解决

 testGraph.render();
    testGraph.fitView();
    // 默认只展开数据前两层
    G6.Util.traverseTree(treeData, (item) => {
      if (item.depth > 1) {
        //collapsed为true时默认收起
        item.collapsed = true;
      }
    });
    testGraph.render();
    testGraph.fitView();

现在结果是这样:
image.png

期望结果:image.png

阅读 1k
1 个回答
新手上路,请多包涵
 function traverse(data, fn, deep = 0) {
            if (fn(data, deep) === false) {
              return;
            }
            G6.Util.each(data.children, (child) => {
              traverse(child, fn, deep + 1);
            });
          }

          traverse(data, function (item, deep) {
            if (deep > 0) {
              //collapsed为true时默认收起
              item.collapsed = true;
            }
            item.id = item.name;
          });

你改成这样应该就可以了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Microsoft
子站问答
访问
宣传栏