Plotting points and lines

2 views (last 30 days)
Manoj
Manoj on 20 Nov 2014
Commented: Manoj on 21 Nov 2014
Hello
I would like to plot these edges and figures as shown in these images. I am able to do it manually using gplot using the following lines code for each one of the figure. But it is time consuming and lot of manual work since I have a lot of these figures to plot (over 50).
G = [0,0,0,0,0; 0,0,1,0,0; 0,0,0,0,1; 0,0,0,0,0; 0,0,0,0,0];
xy = [ 5 10; 0 5; 5 1 ; 10 7.5; 10 2.5];
gplot(G,xy,'-o');
axis([0 75 0 75]) % To Center the Figure
Is there any better way to do this or would you recommend any other tool or software.
Also as you can see, there are two lines between two points. like in the nodes_required jpeg figure, but unfortunately I cannot do this in matlab as well. Is there a way to do this or another possibility could be to use different colours for two lines , three lines and so on.
Thanks in advance
  3 Comments
Guillaume
Guillaume on 21 Nov 2014
Does your data come as an adjacency matrix? If so, how do you decide which edges have a double line? If not, how is it represented?
Manoj
Manoj on 21 Nov 2014
Edited: Manoj on 21 Nov 2014
I have representations of the form for Eg:
m=[ 2 4 1 5 0
1 5 0 0 0];
% 12 13 14 15 23 24 25 34 35 45
n=[0 0 1 2 0 2 0 0 0 0
0 0 0 1 0 0 0 0 0 0];
AS you can see the numbers in the n matrix determines if it needs to have a double line. In the first row , 15 and 24 have a double line.
I have written a code which gets the adjacency matrix from m and n of the form for row 1
adj_matrix=[0 0 0 1 2
0 0 0 2 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0]
So where ever you see a 2,3.. in the adjacency matrix , I need a double line or a different colored line

Sign in to comment.

Accepted Answer

Thorsten
Thorsten on 21 Nov 2014
Edited: Thorsten on 21 Nov 2014
This should give you an idea how to solve it
gplot(adj_matrix==1, m', 'bo-')
gplot(adj_matrix==2, m', 'ro-')
gplot(adj_matrix==3, m', 'ko-')
  1 Comment
Manoj
Manoj on 21 Nov 2014
Thank you for your answer, I got an idea how to solve it. I will get back to you if it works or not.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!