rmedge

Удалите ребро из графика

Описание

пример

H = rmedge(G,s,t) удаляет ребра, заданные парами узлов s и t из графового G. Если существует несколько ребер, заданных как s и t, затем они все удаляются.

пример

H = rmedge(G,idx) определяет, какие ребра удалить с индексами ребер idx. Индексы ребра являются номерами строк в G.Edges таблица.

Примеры

свернуть все

Создайте и постройте график.

s = [1 1 1 2 2 3 3 4 5 5 6 7];
t = [2 4 5 3 6 4 7 8 6 8 7 8];
G = graph(s,t);
plot(G)

Figure contains an axes. The axes contains an object of type graphplot.

Удалите несколько ребер из графика и постройте график результата.

G = rmedge(G,[1 2 3 4],[5 6 7 8]);
plot(G)

Figure contains an axes. The axes contains an object of type graphplot.

Создайте график и просмотрите список ребер.

s = {'BOS' 'NYC' 'NYC' 'NYC' 'LAX'};
t = {'NYC' 'LAX' 'DEN' 'LAS' 'DCA'};
G = digraph(s,t);
G.Edges
ans=5×1 table
         EndNodes     
    __________________

    {'BOS'}    {'NYC'}
    {'NYC'}    {'LAX'}
    {'NYC'}    {'DEN'}
    {'NYC'}    {'LAS'}
    {'LAX'}    {'DCA'}

Удалите ребро между узлами 'NYC' и 'DEN' использование индекса ребра.

G = rmedge(G,3);
G.Edges
ans=4×1 table
         EndNodes     
    __________________

    {'BOS'}    {'NYC'}
    {'NYC'}    {'LAX'}
    {'NYC'}    {'LAS'}
    {'LAX'}    {'DCA'}

В этом примере показано, как удалить все самоциклы из графика. Самоциклы являются ребрами, которые соединяют узел с самим собой.

Создайте график, который имеет два самоциклов.

G = graph([1 1 1 2],[1 2 3 2]);
plot(G)

Figure contains an axes. The axes contains an object of type graphplot.

Использование rmedge чтобы удалить все самоциклы из графика. Хотя G имеет только два самоциклов, этот метод удаляет все самоциклы из любого направленного или неориентированного графа.

G = rmedge(G, 1:numnodes(G), 1:numnodes(G));
plot(G)

Figure contains an axes. The axes contains an object of type graphplot.

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

свернуть все

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

Пример: G = graph(1,2)

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

Пары узлов, заданные как отдельные аргументы индексов узлов или имен узлов. Точно так же расположены элементы в s и t укажите исходный и целевой узлы для ребер в графике.

В этой таблице показаны различные способы обращения к одному или нескольким узлам либо по их числовым индексам узлов, либо по их именам узлов.

ФормаОдин узелНесколько узлов
Индекс узла

Скаляр

Пример: 1

Вектор

Пример: [1 2 3]

Имя узла

Вектор символов

Пример: 'A'

Массив ячеек из символьных векторов

Пример: {'A' 'B' 'C'}

Строковый скаляр

Пример: "A"

Строковые массивы

Пример: ["A" "B" "C"]

Пример: G = rmedge(G,1,2) удаляет ребро между узлом 1 и узлом 2 из графика G.

Пример: G = rmedge(G,{'a' 'b'},{'d' 'c'}) удаляет два ребра из графика G, первый из которых находится между узлами 'a' и узловые 'd'.

Индексы ребра, заданные как скаляр или вектор. Индексы ребра являются неотрицательными целыми числами, которые являются номерами строк в G.Edges таблица.

Пример: G = rmedge(G,[1 3 5]) удаляет первые , третьи и пятые ребра (строки) из G.Edges.

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

свернуть все

Выходной график, возвращенный как graph или digraph объект.

Введенный в R2015b