1

d3jsパックレイアウトを使用して、含まれる子とは無関係に親サークルのサイズを調整することは可能ですか?

円の階層を表示するために d3js パック レイアウトを使用しています。各円は販売グループを表します。ネストされた円は、子販売グループです。各グループには、円の半径で表される総売上高があります。親を含むすべてのグループは、独自の売上高を持つことができます。

比率が正確でない可能性があることは理解していますが、親グループが独自の売上を持っていることを示すために、親円の半径も調整したいと思います.

私は現在、子とは独立した親のサイズを設定していますが、親の半径はそれに含まれる子によって決定されるため、これは無視されているようです。

パック レイアウトで親の半径を調整することはできますか?

私はこの同様の質問を見ました:

D3JS パック サークル レイアウト、親に関連するパディング

しかし、決定的な答えはありませんでした。

4

1 に答える 1

1

円の位置と半径が計算され、pack.nodes()関数によって返されます。通常、これを関数に直接渡してから、.data()それに基づいて要素を描画しますが、戻り値を変更することを止めるものは何もありません。の戻り値の各要素には、最上位の円の場合は null になる属性と、半径を決定する属性pack.nodes()があります。parentr

目的を達成する最も簡単な方法は、パック レイアウトが返す最上位の円の半径を変更することです。つまり、ノードの配列を繰り返し処理し、parentnull の場合は半径を変更します。

于 2013-04-28T09:50:10.050 に答える