exponenta event banner

подграфик

Описание

пример

H = subgraph(G,nodeIDs) возвращает подграф G который содержит только узлы, указанные nodeIDs.

H = subgraph(G,idx) определяет узлы подграфа с помощью логического вектора.

Примеры

свернуть все

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

s = [1 1 1 1 2 2 2 2 2 2 2 2 2 2 15 15 15 15 15];
t = [3 5 4 2 14 6 11 12 13 10 7 9 8 15 16 17 19 18 20];
G = graph(s,t);
plot(G,'Layout','force')

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

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

idx = [2 15 16 17 18 19 20 1 3 4 5];
H = subgraph(G,idx);
plot(H,'Layout','force')

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

Создание и печать взвешенного графика с именованными узлами.

s = [1 1 1 2 2 2 8 8 8 8];
t = [2 3 4 5 6 7 9 10 11 12];
weights = [10 30 40 80 60 60 20 30 90 80];
names = {'A' 'B' 'C' 'D' 'E' 'F' 'G' 'H' 'I' 'J' 'K' 'L'};
G = graph(s,t,weights,names);
plot(G,'EdgeLabel',G.Edges.Weight)

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

Извлечь подграф, содержащий узел 'B' и всех его соседей. subgraph сохраняет имена узлов и веса кромок. Однако числовые идентификаторы узлов в H перенумерованы по сравнению с G.

N = neighbors(G,'B');
H = subgraph(G, ['B'; N]);
plot(H,'EdgeLabel',H.Edges.Weight)

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])

Идентификаторы узлов, указанные как один или несколько индексов узлов или имен узлов. nodeIDs выбирает подмножество узлов в G для создания подграфа, H.

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

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

Скаляр

Пример: 1

Вектор

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

Имя узла

Символьный вектор

Пример: 'A'

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

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

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

Пример: "A"

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

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

Пример: H = subgraph(G,[1 2 5])

Пример: H = subgraph(G,{'A' 'B' 'E'})

Вектор выбора узла, заданный как логический вектор. Подграф содержит только узлы J для которых idx(J) является логическим 1 (true). Индекс узла J в H является I(J), где I = find(idx).

Пример: subgraph(G,degree(G)>2)

Типы данных: logical

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

свернуть все

Подграф, возвращенный как graph или digraph объект. H содержит только те узлы, которые были выбраны с помощью nodeIDs или idx. Другие узлы в G (и края, соединяющиеся с этими узлами) отбрасываются. Свойства узла и свойства кромки выбранных узлов и кромок переносятся из G в H.

Посмотрите graph или digraph для получения дополнительной информации об объектах графика.

Представлен в R2015b