arrenging rows and columns ?
Show older comments
suppose i have latitude
-90
-60
-30
00
30
60
90
and longitude
-160 -120 -80 -40 00 40 80 120 160
i want output as
-90 -160
-60 -160
-30 -160
00 -160
30 -160
60 -160
90 -160
-90 -120
-60 -120
-30 -120
00 -120
30 -120
60 -120
90 -120
.
.
.
like that for all points. Any idea how could i do that ?
Accepted Answer
More Answers (2)
Andrei Bobrov
on 23 Nov 2017
lat = [-90 -60 -30 00 30 60 90]';
long = [ -160 -120 -80 -40 00 40 80 120 160 ];
[x,y] = ndgrid(lat,long);
out = [x(:),y(:)];
a=[-90 -60 -30 00 30 60 90];
b=[-160 -120 -80 -40 00 40 80 120 160];
a=a(:);b=b(:);
aa=repmat(a,length(b),1);
bb=repmat(b,length(a),1);
c=[aa bb]
3 Comments
pruth
on 23 Nov 2017
Birdman
on 23 Nov 2017
this one works.
Jan
on 23 Nov 2017
@cvklpstunc: It works, but does not give the correct result: The 2nd column contains [-160; -120; -80; ...; 120; 160; -160; -120; ...] instead of the wanted [-160; -160; -160; ...]. It works, if you omit "b=b(:)" and reshape it after the repmat:
a = a(:);
aa = repmat(a,length(b),1);
bb = repmat(b,length(a),1);
c = [aa, bb(:)]
Categories
Find more on Cell Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!