how would i change an undirected network into a directed network on matlab?

조회 수: 2 (최근 30일)
hi, how would i change an undirected network into a directed network on matlab? what commannds could I use?

답변 (2개)

Stephan
Stephan 2021년 4월 6일
here is a small example:
A = [0 0 1; 0 0 1; 1 1 0]
ug = graph(A)
B = zeros(size(A,1))
B = B + triu(A)
dg = digraph(B)
subplot(2,1,1)
plot(ug)
subplot(2,1,2)
plot(dg)
read more here:
and at the linked pages at the bottom of the provided link.

Christine Tobler
Christine Tobler 2021년 4월 6일
It depends on what you want to the directed graph to look like. To replace every undirected edge with two directed edges going in both directions, use
directedG = digraph(adjacency(undirectedG);
Note this will not copy over any node or edge properties of the original graph (for example node names). It also won't work if you have a multigraph (more than one edge connecting the same pair of nodes). There are other commands that will work for those cases.

카테고리

Help CenterFile Exchange에서 Undirected Graphs에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by