環状レイアウト・アルゴリズムには、3 つのクラスター・モードがあります。
クラスター・モードの選択例 (CL アルゴリズム)
クラスター・モードを選択するには、以下のようにします。
以下のメソッドを使用します。
layout.setClusteringMode( ibm_ilog.graphlayout.circular.CircularLayout.BY_CLUSTER_IDS);
mode
の有効な値は、次のとおりです。
ibm_ilog.graphlayout.circular.CircularLayout.AUTOMATIC
(デフォルト): これは、モードibm_ilog.graphlayout.CircularLayout.BY_CLUSTER_IDS
と似ていますが、 クラスターを指定する必要はありません。 グラフのトポロジーを分析して、グラフは複数のクラスターに分割されます。 2 連結されたコンポーネントにより、初期クラスターが形成されます。 (自明ではない) 2 連結されたどのコンポーネントにも属さない残りのノードにより、スター型クラスターが形成されます (それらのノードの度合いがスター型クラスターのしきい値よりも大きい場合)。 次に、初期クラスターが、クラスターの最小サイズよりも小さい場合はマージされ、クラスターの最大サイズよりも大きい場合は分割されます。 各クラスターのノードは、リンク交差の数が小さくなるように配置されます。ibm_ilog.graphlayout.circular.CircularLayout.BY_CLUSTER_IDS
: 各ノードにクラスター ID を明示的に指定する必要があります (クラスター・メンバーシップおよびクラスター (CL) 内のノードの順序 を参照)。 指定されたノード順序付けは保持され、リンク交差の低減は実行されません。 ツリーのようなアルゴリズムでクラスターが配置されます。ibm_ilog.graphlayout.circular.CircularLayout.BY_SUBGRAPHS
: アルゴリズムは、入れ子グラフ (グラフ間リンクを含む) を処理します。 円上の各サブグラフのノードは、リンク交差の数が小さくなるように配置されます。 リンク交差の数が小さくなるように、グラフ間リンクが尊重され、クラスターが回転されます。 すべてのノードがほぼ正方形であり、すべてのノードがサブグラフ内にあるが、サブグラフの入れ子が 1 階層のみであることが想定されます。 サブグラフのサブグラフ内部のノードは処理されません。 このモードでは、サブグラフごとに初期位置が保持されます。 サブグラフは、別のアルゴリズムによって、または対話式に配置できます。