Clear Filters
Clear Filters

polar plot to create circular shape with varying radius

4 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);
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:

More Answers (1)

infinity on 19 Jul 2019
How about if you change a bit like this
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;
  1 Comment
William Gray
William Gray on 19 Jul 2019
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.


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!