How to use the data, but no polar function, to make polar plot?

1 view (last 30 days)
Hi,
I am wondering how to use the data, but not polar function, to make polar plot in MATLAB.
My data is like between 0to 1/2pi, the value equal to 1;
between 1/2pi to pi, the value equal to 2;
between pi to 3/2pi, the value equal to 3;
between 3/2pi to 2pi, the value equal to 1.5.
I noticed that it is very easy to make polar plot when there is a polar function between theta and r,
however, I only have the data but no function....
I wonder is it possible to make polar plot just using my data? Or...how to make a polar function using my data?
Thanks,
Cece

Accepted Answer

Robert
Robert on 6 Jul 2016
I would use polar to plot the data; however it looks like R2016a has a preferred option -- polarplot ( doc ).
With polar, you could try
theta = linspace(0,2*pi,1e3); % more values yeilds a smoother plot
r = nan(size(theta)); % pre-allocate r
r(theta<pi/2) = 1;
r(theta>=pi/2&theta<pi) = 2;
r(theta>=pi&theta<3*pi/2) = 3;
r(theta>=3*pi/2) = 1.5;
r(end) = 1; % makes it a closed loop
polar(theta,r)

More Answers (1)

Thorsten
Thorsten on 6 Jul 2016
theta = deg2rad(0:359);
r = [1 2 3 1.5];
r = repmat(r, 90, 1); r = r(:)';
plot(r.*cos(theta), r.*sin(theta))
axis equal

Categories

Find more on Polar Plots 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!