График с неориентированными ребрами
Объекты graph
представляют неориентированных графов, которые имеют бесцельные края, соединяющие узлы. После того, как вы создадите объект диаграмм, можно узнать больше о графике при помощи объектных функций, чтобы выполнить запросы против объекта. Например, можно добавить или удалить узлы или края, определить кратчайший путь между двумя узлами или определить местоположение определенного узла или края.
G = graph([1 1], [2 3]); e = G.Edges G = addedge(G,2,3) G = addnode(G,4) plot(G)
G = graph
G = graph(A)
G = graph(A,nodenames)
G = graph(A,NodeTable)
G = graph(A,___,type)
G = graph(A,___,'omitselfloops')
G = graph(s,t)
G = graph(s,t,weights)
G = graph(s,t,weights,nodenames)
G = graph(s,t,weights,NodeTable)
G = graph(s,t,weights,num)
G = graph(s,t,___,'omitselfloops')
G = graph(s,t,EdgeTable,___)
G = graph(EdgeTable)
G = graph(EdgeTable,NodeTable)
G = graph(EdgeTable,___,'omitselfloops')
создает взвешенный график с помощью квадратной, симметричной матрицы смежности, G = graph(A)
A
. Местоположение каждой ненулевой записи в A
задает край для графика, и вес края равен значению записи. Например, если A(2,1) = 10
, то G
содержит край между узлом 2 и узлом 1 с весом 10.
дополнительно задает имена узла. Число элементов в G = graph(A,nodenames)
nodenames
должно быть равно size(A,1)
.
задает имена узла (и возможно другие атрибуты узла) использование таблицы, G = graph(A,NodeTable)
NodeTable
. Таблица должна иметь то же количество строк как A
. Задайте имена узла с помощью табличной переменной Name
.
задает треугольник матрицы смежности, чтобы использовать в построении графика. Вы должны задать G = graph(A,___,type)
A
и опционально можете задать nodenames
или NodeTable
. Чтобы использовать только верхний или более низкий треугольник A
, чтобы создать график, type
может быть или 'upper'
или 'lower'
.
игнорирует диагональные элементы G = graph(A,___,'omitselfloops')
A
и возвращает график без любых самоциклов. Можно использовать любую из комбинаций входных аргументов в предыдущих синтаксисах.
задает края графика G = graph(s,t)
(s,t)
в парах узла. s
и t
могут задать индексы узла или имена узла.
также задает вес ребра с массивом G = graph(s,t,weights)
weights
.
задает имена узла с помощью массива ячеек из символьных векторов или массива строк, G = graph(s,t,weights,nodenames)
nodenames
. s
и t
не могут содержать имена узла, которые не находятся в nodenames
.
задает имена узла (и возможно другие атрибуты узла) использование таблицы, G = graph(s,t,weights,NodeTable)
NodeTable
. Задайте имена узла с помощью табличной переменной Name
. s
и t
не могут содержать имена узла, которые не находятся в NodeTable
.
задает количество узлов в графике с числовым скаляром G = graph(s,t,weights,num)
num
.
не добавляет самоциклов к графику. Таким образом, любой G = graph(s,t,___,'omitselfloops')
k
, который удовлетворяет s(k) == t(k)
, проигнорирован. Можно использовать любую из комбинаций входных аргументов в предыдущих синтаксисах.
использует таблицу, чтобы задать граничные атрибуты вместо того, чтобы задать G = graph(s,t,EdgeTable,___)
weights
. Входной параметр EdgeTable
должен быть таблицей со строкой для каждой соответствующей пары элементов в s
и t
. Задайте вес ребра с помощью табличной переменной Weight
.
использует таблицу G = graph(EdgeTable)
EdgeTable
, чтобы задать график. С этим синтаксисом первую переменную в EdgeTable
нужно назвать EndNodes
, и это должен быть массив двух-столбца, задающий список краев графика.
дополнительно задает имена (и возможно другие атрибуты) вершин графика с помощью таблицы, G = graph(EdgeTable,NodeTable)
NodeTable
.
не добавляет самоциклы к графику. Таким образом, любой G = graph(EdgeTable,___,'omitselfloops')
k
, который удовлетворяет EdgeTable.EndNodes(k,1) == EdgeTable.EndNodes(k,2)
, проигнорирован. Вы должны задать EdgeTable
и опционально можете задать NodeTable
.