condensation

Синтаксис

Описание

пример

C = condensation(G) возвращает ориентированный график C узлы которого представляют сильно соединенные компоненты в G. Это сокращение обеспечивает упрощенное представление о связности между компонентами.

Примеры

свернуть все

Создайте и постройте график, который содержит несколько сильно связанных компонентов. Выделите сильно соединенные компоненты.

s = [1 1 2 3 3 4 4 4 4 5 5 6 6 6 7 8 8 9 9 10 10 10 11 11 12 13 13 14 15];
t = [1 3 1 2 5 1 2 12 13 6 8 7 8 10 10 9 10 5 11 9 11 14 12 14 13 11 15 13 14];
G = digraph(s,t);
p = plot(G);

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

bins = conncomp(G);
p.MarkerSize = 7;
p.NodeCData = bins;
colormap(hsv(4))

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

Использование condensation чтобы представлять каждый компонент как один узел. Окрашивайте узлы на основе компонентов, которые они представляют.

C = condensation(G);
p2 = plot(C);
p2.MarkerSize = 7;
p2.NodeCData = 1:4;
colormap(hsv(4))

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

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

свернуть все

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

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

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

свернуть все

График конденсации, возвращенный как digraph объект. C является ориентированным ациклическим графиком (DAG) и топологически отсортирован. Номера узлов в C соответствуют номерам интервалов, возвращаемым conncomp.

condensation определяет узлы и ребра в C по компонентам и связности в G:

  • C содержит узел для каждого сильно связанного компонента в G.

  • C содержит ребро между узлами I и узловые J если существует ребро от любого узла в компоненте I любому узлу в компоненте J от G.

Введенный в R2016b