How to draw line between specific points?
29 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Vikas Saroha
am 15 Mai 2019
Bearbeitet: madhan ravi
am 15 Mai 2019
I have two matrices
A = [1000 1000;...
1003 2640;...
2323 2638;...
2661 1096;...
1000 1000;...
1003 2640];
B = [1003 2640;...
2323 2638;...
2661 1096;...
1000 1000;...
2323 2638;...
2661 1096];
I want to plot lines between points mentioned in A and B. I am plotting it by
data = [A, B];
hold on
for i=1:6
plot(data(i, 1:2), data(i, 3:4));
end
Lines are not connected in the figure which is attached herewith.
Please help.
0 Kommentare
Akzeptierte Antwort
Bjorn Gustavsson
am 15 Mai 2019
For the first time around your loop you plot:
plot(data(1, 1:2), data(1, 3:4)); % i.e.
plot(A(1,:),B(1,:))
that corresponds to using [1000 1000] from A as X-coordinates, and [1003 2640] as Y-coordinates of your line.
I don't think that's what you want. Have a think about what lines you want to plot (manually, perhaps for only 2-3 rows
of A and B) and how you need to loop over the rows to achieve that. Homework hint: you are allowed to use nested loops.
HTH
0 Kommentare
Weitere Antworten (2)
Sayyed Ahmad
am 15 Mai 2019
I hope the following codes are what you want:
clear all
close all
clc
A = [ 1000 1000; 1003 2640; 2323 2638; 2661 1096; 1000 1000; 1003 2640]
B= [ 1003 2640; 2323 2638; 2661 1096; 1000 1000; 2323 2638; 2661 1096]
x=zeros(size(A,1)*2,1)
ref=find(mod(1:size(x,1),2))
x(ref)=A(1:size(A,1),1)
x(ref+1)=B(1:size(A,1),1)
y(ref)=B(1:size(A,1),2)
y(ref)=A(1:size(A,1),2)
y(ref+1)=B(1:size(A,1),2)
plot(x,y)
0 Kommentare
Siehe auch
Kategorien
Mehr zu Annotations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!