"SpringElectricalEmbedding" (グラフレイアウトメソッド)

詳細とオプション

  • バネ電気埋込みは,各頂点に電荷があり,各辺がバネに対応している場合に,機械・電気エネルギーを最小に抑えるようにグラフの頂点を配置するグラフ描画手法である.
  • バネ電気埋込みは,通常,複雑で大きいグラフのレイアウトに使われる.
  • グラフの頂点 viのレイアウト xiは,以下でエネルギー関数を最小化することで計算される.
  • f_(i)= -C sum_(j!=i)(K^2)/(||x_i-x_j||^2)(x_(j)-x_(i)) +sum_( i j)(||x_i-x_j||)/K(x_(j)-x_(i)).
  • は反発力の相対強度を制御する定数で, は相対的なバネの長さである.
  • 頂点はに埋め込むことができる.
  • 次は,使用可能なモデルパラメータである.
  • "RepulsiveForcePower" 反発力係数
    "SpringConstant" バネ係数
  • 次は,使用可能なグラフパラメータである.
  • "EdgeWeighted"辺の重みを使うかどうか
    "VertexWeighted"頂点の重みを使うかどうか
  • 次は,エネルギーの最小化過程の制御に使用可能な設定である.
  • "EnergyControl"最小化中にエネルギー関数をどのように制御するか
    "InferentialDistance"遠くの頂点からの推定のためのカットオフ距離
    "MaxIterations"最大反復回数
    "RandomSeed"初期頂点配置のための乱数生成器のシード
    "StepControl"エネルギーの最小化中のステップ長の変更方法
    "StepLength"頂点の移動に使用する初期ステップ長
    "Tolerance"過程の終了に使用する許容範囲

例題

すべて開くすべて閉じる

  (2)

グラフをレイアウトする:

"SpringElectricalEmbedding"はほとんどのグラフに最適である:

オプション  (10)

"EdgeWeighted"  (1)

"EdgeWeighted"Trueと設定すると,辺の重みが使われる:

"EnergyControl"  (1)

オプション"EnergyControl"e を使って,最小化中の系の総エネルギーに対する制限を指定する:

"InferentialDistance"  (1)

"InferentialDistance"d を使って,それを超えた頂点同士のインタラクションは存在しないものと仮定するカットオフ距離を指定する:

"MaxIteration"  (1)

"MaxIteration"it を使ってエネルギーを最小にしようとする際に使う最大反復回数を指定する:

"RandomSeed"  (1)

"RandomSeed"int を使って初期頂点配置を計算する乱数生成のシードを指定する:

"RepulsiveForcePower"  (1)

"RepulsiveForcePower"r を使って距離による反発力の減衰速度を制御する:

"SpringConstant"  (1)

"SpringConstant"r を使って引力の係数を制御する:

"StepControl"  (1)

"StepControl"method を使ってエネルギーの最小化中のステップ長の変更方法を定義する:

"StepLength"  (1)

"StepLength"r を使って頂点を動かす際の初期ステップ長を指定する:

"Tolerance"  (1)

"Tolerance"r を使ってエネルギーの最小化過程を終了する許容範囲を指定する: