これには多少の作業が必要ですが、基本的に私が提案するアイデアは、円を描かない関係と呼ばれる特別な種類のノードを使用してフォース レイアウトを行うことです。これは 2 つのサブジェクト間のバインドを表し、より多くのノードの親になることができます。
d3 では、必要に応じてすべてのデータ構造を拡張できます。その後、データをバインドする作業が増えますが、すべてカスタマイズ可能です。フォース レイアウトで使用するデータ構造のサンプルを次に示します。
{
"nodes": [
{
"type": "root",
"x": 300,
"y": 300,
"fixed": true
},
{
"type": "male",
"name": "grandpa"
},
{
"type": "female",
"name": "grandma"
},
{
"type": "relationship"
},
{
"type": "male",
"name": "dad"
},
{
"type": "female",
"name": "mum"
},
{
"type": "relationship"
},
{
"type": "male",
"name": "I"
}
],
"links": [
{
"source": 0,
"target": 2
},
{
"source": 1,
"target": 2
},
{
"source": 0,
"target": 3
},
{
"source": 3,
"target": 4
},
{
"source": 4,
"target": 6
},
{
"source": 5,
"target": 6
},
{
"source": 6,
"target": 7
}
]
}
d3の可能性について何かを明確にしたことを願っています。