このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
digraph
有向エッジをもつグラフ
説明
digraph
オブジェクトは、方向性をもつエッジによりノードが連結されている有向グラフを表します。digraph
オブジェクトの作成後、そのオブジェクトに対しオブジェクト関数を使用してクエリを実行することで、グラフについて詳細を知ることができます。たとえば、ノードまたはエッジの追加や削除、2 つのノード間の最短経路の特定、特定のノードやエッジの検出ができます。
G = digraph([1 1], [2 3]) e = G.Edges G = addedge(G,2,3) G = addnode(G,4) plot(G)
作成
構文
説明
は、ノードとエッジをもたない空の有向グラフ オブジェクト G
= digraphG
を作成します。
は、正方隣接行列 G
= digraph(A
)A
を使用して有向グラフを作成します。
論理隣接行列の場合は、エッジの重みがないグラフになります。
非論理隣接行列の場合は、エッジの重みがあるグラフになります。
A
の各非ゼロ要素の位置はグラフのエッジを指定し、エッジの重みは要素の値に等しくなります。たとえば、A(2,1) = 10
である場合、G
には、ノード 2 からノード 1 に向かう重み 10 のエッジがあります。
は、有向グラフのエッジ G
= digraph(s,t
)(s,t)
をソース ノードとターゲット ノードを表すペアで指定します。s
と t
は、ノード インデックスまたはノード名を指定できます。digraph
は、G
内のエッジをまずソース ノードで並べ替えてから、ターゲット ノードで並べ替えます。s
および t
と同じ順序のエッジ プロパティがある場合は、構文 G = digraph(s,t,EdgeTable)
を使用してエッジ プロパティを渡し、結果のグラフで同じように並べ替えられるようにします。
は自己ループをグラフに追加しません。つまり、G
= digraph(s,t
,___,'omitselfloops')s(k) == t(k)
を満たす k
はすべて無視されます。前述の構文にある任意の入力引数の組み合わせが使用できます。
は、table G
= digraph(EdgeTable
)EdgeTable
を使用してグラフを定義します。この構文の場合、EdgeTable
の最初の変数は EndNodes
という名前で、グラフ エッジのリストを定義する 2 列配列でなければなりません。
は自己ループをグラフに追加しません。つまり、G
= digraph(EdgeTable
,___,'omitselfloops')EdgeTable.EndNodes(k,1) == EdgeTable.EndNodes(k,2)
を満たす k
はすべて無視されます。EdgeTable
の指定は必須です。NodeTable
はオプションで指定できます。