for example: How to plot bellow graph?
G=[1 4 0.2
2 4 0.2
3 4 0.2
4 1 0.7
4 2 0.7
4 3 0.7
4 5 0.5
4 8 0.6
5 4 0.4
5 6 0.8
5 7 0.8
6 5 0.3
7 5 0.3
8 4 0.5
8 9 0.9
8 10 0.9
8 11 0.9
9 8 0.4
10 8 0.4
11 8 0.5
11 12 0.6
12 11 0.2];
and How to plot an unweighted graph?

댓글 수: 3

Azzi Abdelmalek
Azzi Abdelmalek 2016년 4월 5일
What is unweighted graph?
Muhammad Usman Saleem
Muhammad Usman Saleem 2016년 4월 5일
also what is weighted graph? I know about weight mean not weighted graph
Walter Roberson
Walter Roberson 2016년 4월 6일
"A weight is a numerical value, assigned as a label to a vertex or edge of a graph. A weighted graph is a graph whose vertices or edges have been assigned weights; more specifically, a vertex-weighted graph has weights on its vertices and an edge-weighted graph has weights on its edges."
For example, if you were creating a pipeline network, then the weight might correspond to the carrying capacity of the pipe. If you were creating a road map, then the weight might correspond to the speed limit on the segment.

댓글을 달려면 로그인하십시오.

 채택된 답변

Mike Garrity
Mike Garrity 2016년 4월 5일

3 개 추천

Something like this?
G=[1 4 0.2; ...
2 4 0.2; ...
3 4 0.2; ...
4 1 0.7; ...
4 2 0.7; ...
4 3 0.7; ...
4 5 0.5; ...
4 8 0.6; ...
5 4 0.4; ...
5 6 0.8; ...
5 7 0.8; ...
6 5 0.3; ...
7 5 0.3; ...
8 4 0.5; ...
8 9 0.9; ...
8 10 0.9; ...
8 11 0.9; ...
9 8 0.4; ...
10 8 0.4; ...
11 8 0.5; ...
11 12 0.6; ...
12 11 0.2];
g = digraph(G(:,1),G(:,2),G(:,3));
plot(g,'EdgeLabel',g.Edges.Weight)
Requires R2015b. Do 'help digraph' to get more examples. You can do things like color the edges by the weights.

댓글 수: 10

Muhammad Usman Saleem
Muhammad Usman Saleem 2016년 4월 6일
I think g.Edges.Weight is bolding Edges of g? @Mike Garrity
Walter Roberson
Walter Roberson 2016년 4월 6일
I do not understand what you mean by "bolding" in that question?
Jack Ie
Jack Ie 2016년 4월 6일
It works in R2015b. how to do this in R2014b?
Mike Garrity
Mike Garrity 2016년 4월 6일
Sorry, graph was introduced in R2015b.
To "bold" all the edges (which I interpreted as making those with higher weight appear wider/thicker) use the LineWidth property.
plot(g,'EdgeLabel',g.Edges.Weight, 'LineWidth', 5*g.Edges.Weight)
If you want to change only the width of certain edges, say those with the highest weights, look instead at highlight.
% Plot the graph and increase the size of the arrows
% This will let us see the arrows more easily after highlighting
h = plot(g,'EdgeLabel',g.Edges.Weight, 'ArrowSize', 15);
% Locate the indices of the edges with the highest weights
edgesHighestWeight = find(g.Edges.Weight == max(g.Edges.Weight));
% Convert those indices into source and target nodes
[S, T] = findedge(g, edgesHighestWeight);
% Highlight the edges (S, T) where S and T are vectors of node indices
highlight(h, S, T, 'LineWidth', 5);
For this example only the three edges (8, 11), (8, 9), and (8, 10) should be highlighted. They're the only ones with weight 0.9.
sibabalo noludwwe
sibabalo noludwwe 2019년 8월 22일
if I want my graph to be weighted on the vertices instead of weighting the edges what do I do?
Steven Lord
Steven Lord 2019년 8월 22일
Change the MarkerSize property of the object returned by plot, either in the call to plot itself (like LineWidth in the first line of code in my message from April 6th 2016) or afterwards (for this you can use highlight like I did in the last line of code in my message, but specifying MarkerSize instead of LineWidth.)
Luara Antunes
Luara Antunes 2022년 5월 2일
How to plot a weighted graph when the vertex-weighted graph has weights on its vertices, but not in edge-weighted?
Steven Lord
Steven Lord 2022년 5월 2일
Add a property to the Nodes table as shown on this documentation page.
Luara Antunes
Luara Antunes 2022년 5월 18일
Thanks

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Walter Roberson
Walter Roberson 2016년 4월 6일

1 개 추천

댓글 수: 3

Muhammad Usman Saleem
Muhammad Usman Saleem 2016년 4월 7일
thanks for sharing!
Joel Sande
Joel Sande 2016년 4월 11일
Hi, How to include digraph folder in Matlab 2014a ? thanks
Joel Sande
Joel Sande 2016년 4월 11일
편집: Joel Sande 2016년 4월 11일
I downloaded the folder digraph. I don t know how to use it in my code. I have the 2014a version.

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Graph and Network Algorithms에 대해 자세히 알아보기

질문:

2016년 4월 5일

댓글:

2022년 5월 18일

Community Treasure Hunt

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

Start Hunting!

Translated by