Fixing my counter statement.
조회 수: 6 (최근 30일)
이전 댓글 표시
So I have two arrays (x and y) that are 324 long columns. I need to separate the each pair(x,y) of points into what quadrant the point falls into when graphed. For example if the first x and y are (-3,4) I need to put that point into an array of the other points in the data that fall in quadrant two. What am I doing wrong?
Q=[x y];
for counter=1:length(Q)
if x(counter)>0 && y(counter)>0
Q1=[x(x>0) y(y>0)'];
end
if x(counter)<0 && y(counter)>0
Q2=[x(x<0) y(y>0)'];
end
if x(counter)<0 && y(counter1)<0
Q3=[x(x<0) y(y<0)'];
end
if x(counter)>0 && y(counter1)<0
Q4=[x(x>0) y(y<0)'];
end
end
댓글 수: 0
채택된 답변
the cyclist
2015년 5월 1일
I would do it like this:
% Some pretend data
x = rand(324,1) - 0.5;
y = rand(324,1) - 0.5;
% First quadrant
Q1_index = (x>0) & (y>0);
Q1 = [x(Q1_index) y(Q1_index)]
% similar code for the other three quadrants ...
댓글 수: 0
추가 답변 (1개)
John D'Errico
2015년 5월 1일
Why all the tests?
whichQuadrant = @(x,y) 1 + floor(mod(atan2d(y,x)/90,4));
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Operators and Elementary Operations에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!