inedges

Входящие края к узлу

Синтаксис

eid = inedges(G,nodeID)
[eid,nid] = inedges(G,nodeID)

Описание

пример

eid = inedges(G,nodeID) возвращает индексы всех входящих краев к узлу nodeID в ориентированном графе G.

пример

[eid,nid] = inedges(G,nodeID) дополнительно возвращает идентификаторы узла узлов-предшественников, соединенных с nodeID краями в eid.

Примеры

свернуть все

Создайте мультиграф с тремя узлами и четырьмя краями. Найдите входящие края узла 3.

G = digraph([1 1 1 2],[2 2 3 3]);
G.Edges
ans=4×1 table
    EndNodes
    ________

     1    2 
     1    2 
     1    3 
     2    3 

eid = inedges(G,3)
eid = 2×1

     3
     4

G.Edges(eid,:)
ans=2×1 table
    EndNodes
    ________

     1    3 
     2    3 

Постройте график графика и подсветите входящие края и предшественников выбранного узла.

Создайте и постройте график ориентированного графа с помощью матрицы смежности bucky. Подсветите узел 1 для ссылки.

G = digraph(bucky);
p = plot(G);
highlight(p,1,'NodeColor','r','MarkerSize',10)

Определите входящие края и предшественников узла 1. Подсветите эти узлы и края.

[eid,nid] = inedges(G,1)
eid = 3×1

     4
    13
    16

nid = 3×1

     2
     5
     6

X = G.Edges(eid,:)
X=3×2 table
    EndNodes    Weight
    ________    ______

     2    1       1   
     5    1       1   
     6    1       1   

highlight(p,nid,'NodeColor','g','MarkerSize',9)
highlight(p,'Edges',eid,'EdgeColor','g')

Входные параметры

свернуть все

Введите график, заданный как объект digraph. Используйте digraph, чтобы создать объект ориентированного графа.

Пример: G = digraph([1 2],[2 3])

Идентификатор узла, заданный как одно из значений в этой таблице.

ЗначениеПример
Скалярный индекс узла1
Имя узла вектора символаA
Представьте скалярное имя узла в виде строкиA

Пример: inedges (G, 1)

Пример: inedges (G)

Выходные аргументы

свернуть все

Граничные индексы, возвращенные как вектор - столбец. Можно использовать граничные индексы, чтобы индексировать в граничную таблицу графика с G.Edges(eid,:).

Идентификаторы узла предшественников, возвращенных как индексы узла, если nodeID является числовым, или как имена узла, если nodeID является именем узла. Используйте findnode(G,nid), чтобы преобразовать имена узла в индексы узла. Можно использовать индексы узла, чтобы индексировать в таблицу узлов графика с G.Nodes(nid,:).

Идентификаторы узла в nid совпадают с возвращенными функцией predecessors. Однако, если существует несколько входящих краев от того же узла, этот узел перечислен несколько раз в nid.

Советы

  • Условно, для неориентированных графов, весь граничный инцидент к узлу считается исходящими краями. Используйте outedges с неориентированными графами.

  • Для графиков с несколькими краями inedges и predecessors могут возвращаемые массивы различных длин, поскольку может быть несколько входящих краев от некоторых предшественников.

Представленный в R2018a

Была ли эта тема полезной?