在d3中结合力和包布局

Ren*_*aud 6 layout d3.js force-layout circle-pack

我有一个用标准力布局表示的图形.

节点可以按属性进行聚类.

我可以使用包布局来表示这些群集吗?

2个布局如何共存以及如何计算节点的x和y坐标?

编辑
我想我可能必须处理我的数据以将节点集群转换为包含集群层次结构作为属性的单个节点.我仍然会欢迎另一种方法,如果可能的话,不会强迫我重塑我的数据.

这是我转换为适合多布局方法的示例数据集.这里的问题是我无法链接集群的任何节点.

{
    "directed": true,
    "graph": [],
    "nodes": [
        {
            "id": "node0"
        },
        {
            "id": "node1"
        },
        {
            "id": "node2",
            "tree": {
                "name": "cluster",
                "children": [
                    {
                        "id": "node3"
                    },
                    {
                        "id": "node4"
                    },
                    {
                        "id": "node5"
                    }
                ]
            }
        }
    ],
    "links": [
        {
            "source": 0,
            "target": 1
        },
        {
            "source": 1,
            "target": 2
        },
        {
            "source": 0,
            "target": 2
        }
    ],
    "multigraph": false
}
Run Code Online (Sandbox Code Playgroud)