# polar plot to create circular shape with varying radius

10 views (last 30 days)
William Gray on 19 Jul 2019
Commented: Star Strider on 19 Jul 2019
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!

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)

William Gray on 19 Jul 2019
Hi,
Thank you for this, a simple change but it gives me exactly what I was after!
Star Strider on 19 Jul 2019
As always, my pleasure!

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 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.