reordernodes
그래프 노드 다시 정렬
설명
예제
그래프 노드 다시 정렬
그래프를 생성하고 플로팅합니다.
s = [1 1 1 2 5 3 6 4 7 8 8 8]; t = [2 3 4 5 3 6 4 7 2 6 7 5]; G = graph(s,t); plot(G)
치환 벡터를 사용하여 그래프 노드를 다시 정렬합니다.
order = [7 2 3 4 8 1 5 6]; G = reordernodes(G,order); plot(G)
차수를 기준으로 그래프 노드 다시 정렬하기
가중 그래프(Weighted Graph)를 생성하고 플로팅합니다.
s = [1 1 1 2 2 2 2 3 4];
t = [3 4 2 3 4 5 6 5 6];
weights = [6 7 6 3 2 8 7 1 1];
G = digraph(s,t,weights);
plot(G,'EdgeLabel',G.Edges.Weight)
노드 1이 가장 큰 진출차수를 가지도록 진출차수를 기준으로 그래프 노드를 다시 정렬합니다.
[~,order] = sort(outdegree(G),'descend')
order = 6×1
2
1
3
4
5
6
[H,idx] = reordernodes(G,order);
plot(H,'EdgeLabel',H.Edges.Weight)
idx
는 G.Edges
의 행 치환을 설명합니다. Weight
변수를 사용하여 이 대응을 확인합니다.
isequal(H.Edges.Weight, G.Edges.Weight(idx))
ans = logical
1
입력 인수
order
— 노드 순서
노드 인덱스 | 노드 이름
노드 순서로, 노드 인덱스 또는 노드 이름으로 지정됩니다. order
는 G
의 인접 행렬에 대한 대칭 치환을 지정합니다. A = adjacency(G)
이면 A(order,order)
가 adjacency(H)
를 생성합니다.
order
는 다음 중 하나일 수 있습니다.
노드 인덱스로 구성된 숫자형 벡터(예:
[1 3 2]
).노드 이름이 들어 있는 문자형 벡터로 구성된 셀형 배열 또는 string형 배열(예:
{'A' 'C' 'B'}
또는["A" "C" "B"]
).
예: H = reordernodes(G,[3 1 2])
출력 인수
H
— 출력 그래프
graph
객체 | digraph
객체
출력 그래프로, graph
객체 또는 digraph
객체로 반환됩니다. H
는 G
와 동일한 Nodes
속성과 Edges
속성을 포함하지만, 치환된 H.Nodes
와 H.Edges
의 행을 사용합니다.
H.Nodes
는G.Nodes(order,:)
와 동일합니다.H.Edges
는 노드의 번호가 다시 매겨지는 것을 제외하고는G.Edges(idx,:)
와 유사합니다.
idx
— 간선 인덱스의 치환 벡터
벡터
간선 인덱스의 치환 벡터로, 벡터로 반환됩니다. idx
의 값은 G.Edges
의 행 치환을 설명합니다.
버전 내역
R2015b에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)