how can I rotate the ellipses based on the orientation angle of (x_i,y_i)?

1 view (last 30 days)
I would like to rotate the ellipses to show the orientation, theta, of the centered data points.

Accepted Answer

KSSV
KSSV on 16 Jun 2017
a=5; % horizontal radius
b=10; % vertical radius
x0=0; % x0,y0 ellipse centre coordinates
y0=0;
t=-pi:0.01:pi;
x=x0+a*cos(t);
y=y0+b*sin(t);
plot(x,y)
hold on
%%Rotate the ellipse by 90 degrees
th = pi/2 ;
R = [cos(th) -sin(th) ; sin(th) cos(th)] ;
% Rotate all the points
P = zeros(2,length(x)) ;
for i =1:length(x)
P(:,i) = R*[x(i) ;y(i)] ;
end
xr = P(1,:) ; yr = P(2,:) ;
plot(xr,yr,'r')
  3 Comments
KSSV
KSSV on 16 Jun 2017
YOu have to run it in a loop....
for i = 1:length(x_i) ;
P(:,i) = R * [x_i(i) ; y_i(i)];
end

Sign in to comment.

More Answers (1)

Giulio Antufermo
Giulio Antufermo on 14 Jan 2020
It didn't really work for me

Categories

Find more on 3-D Scene Control 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!