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