How to do polar plot correctly?

5 次查看(过去 30 天)
The task is to plot each group in different symbol and color and show them at their "angle" location in polar plot. This script was used:
factor = 1.2 * 1e-3;
n = 7;
f = [400 200 -10 -200 -300];
symb = ['ro' 'bd' 'gs' 'm^' 'cv' 'r+' 'bx'];
figure('color','white')
hold on
for nn=1:n
t = (nn-1)*factor;
A = exp(-1i*2*pi*t*f);
[THETA,RHO] = cart2pol(real(A), imag(A));
polar(THETA,RHO,symb(nn))
end
hold off
However this was what it output. Obviously this is not correct, no polar graph and no color symbol. Something must be wrong.
Above, if no color used by using the script below, it plot as the second graph below:
symb = ['o' 'd' 's' '^' 'v' '+' 'x'];
Thank you for pointing out the mistake.

采纳的回答

Dishant Arora
Dishant Arora 2014-6-24
编辑:Dishant Arora 2014-6-24
Define your symb a cell array that is
symb = {'ro' 'bd' 'gs' 'm^' 'cv' 'r+' 'bx'}
To know where you went wrong, check out the echo of following command at command window:
symb = ['ro' 'bd' 'gs' 'm^' 'cv' 'r+' 'bx']
  2 个评论
John
John 2014-6-24
编辑:John 2014-6-24
Hi, Dishant:
Thanks! How to plot it as desired "POLAR" plot like Matlat doc example?
John
John 2014-6-25
I found out that the polar plot doesn't accept 'hold on' command. The script below plots perfect polar chart. But as soon as a 'hold on' is added, it became a non-polar plot.
Hope Mathworks can fix this and make it a real polar plot.
factor = 1.2 * 1e-3;
f = [400 200 -10 -200 -300];
figure('color','white')
t = 2*factor;
A = exp(-1i*2*pi*t*f);
[THETA,RHO] = cart2pol(real(A), imag(A));
polar(THETA,RHO,'ro')

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Calculus 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by