3

d3.js を使用したツリー レイアウト ( example ) で、クリックされたブランチにないノードを折りたたみたいと思います。

たとえば、上記のデモでは、次のことを試してください。

  1. 「親 1」をクリックします (子 1 と子 2 が表示されます)。
  2. 「子 1」をクリックします (子 1.1 が表示されます)。
  3. 「子 2」をクリックします (子 2.1 が表示されます)。

これで、"Child 1" と "Child 2" の両方の子が表示されるはずです。

次のことを実現したいと思います。

  1. 「親 1」をクリックします (子 1 と子 2 が表示されます)。
  2. 「子 1」をクリックします (子 1.1 が表示されます)。
  3. 「子 2」をクリックします (子 2.1 が表示され、子 1.1 は非表示になります) 。

したがって、「アクティブな」ブランチ以外のノードの子は非表示にする必要があります。

どうすればこれに最もよくアプローチできますか?(もちろん、かなり大きなデータセットを使用するので効率的です)

4

2 に答える 2