Plotting points and lines

2 Ansichten (letzte 30 Tage)
Manoj
Manoj am 20 Nov. 2014
Kommentiert: Manoj am 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 Kommentare
Guillaume
Guillaume am 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 am 21 Nov. 2014
Bearbeitet: Manoj am 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

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Thorsten
Thorsten am 21 Nov. 2014
Bearbeitet: Thorsten am 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 Kommentar
Manoj
Manoj am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by