График с ориентированными ребрами
digraph
объекты представляют ориентированных графов, которые имеют направленные ребра, соединяющие узлы. После того, как вы создаете digraph
объект, можно узнать больше о графике при помощи объектных функций, чтобы выполнить запросы против объекта. Например, можно добавить или удалить узлы или ребра, определить кратчайший путь между двумя узлами или определить местоположение определенного узла или ребра.
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')k
это удовлетворяет s(k) == t(k)
проигнорирован. Можно использовать любую из комбинаций входных аргументов в предыдущих синтаксисах.
использует таблицу G
= digraph(EdgeTable
)EdgeTable
задавать график. С этим синтаксисом, первой переменной в EdgeTable
должен быть назван EndNodes
, и это должен быть массив 2D столбца, задающий список ребер графика.
не добавляют самоциклы к графику. Таким образом, любой G
= digraph(EdgeTable
,___,'omitselfloops')k
это удовлетворяет EdgeTable.EndNodes(k,1) == EdgeTable.EndNodes(k,2)
проигнорирован. Необходимо задать EdgeTable
и опционально может задать NodeTable
.