polar plot to create circular shape with varying radius

5 views (last 30 days)
Hi Everyone,
I'm new to polar plotting and I'm struggling to sucesfully plot what I'm after.
I want to polar plot a random variable around an origin of my choice. I have tried to do this through the following code:
k = round(rand(1,50)*10)+10;
Th = linspace(0,2*pi,50);
Rho = k.*sin(Th);
figure
polar(Th,Rho)
However, this isn't quite working. As all the values are positive it's cramping the plot in the top 2 quadrants. Please see attached plot for what I mean. I have sketched the kind of plot I am after (apologies for how rough this sketch is) but any ideas would be realy appreciated.
Thanks everyone!

Accepted Answer

Star Strider
Star Strider on 19 Jul 2019
Plotting the sine function in a polar plot will produce one circle in the upper half of the polar axes.
To get the sort of plot you want, do this:
figure
polar(Th,k)

More Answers (1)

infinity
infinity on 19 Jul 2019
Hello,
How about if you change a bit like this
clear
close all
% k = round(rand(1,50)*10)+10;
k = round(rand(1,50));
Th = linspace(0,2*pi,50);
% Rho = k.*sin(Th);
Rho = k.*sin(Th)-10;
figure
polar(Th,Rho)
  1 Comment
William Gray
William Gray on 19 Jul 2019
Hi,
Thanks for the answer this helps! Ive found from the script however that the 'randomness' of the values appear slightly stunted, I think because the rounding of k just gives zero's and ones. I've managed to plot what I was after below with Star Strider's answer but again, thank you for the help.

Sign in to comment.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!