How to plot multiple polar graph?

조회 수: 106 (최근 30일)
Saad
Saad 2012년 4월 24일
댓글: yonatan yamin 2022년 4월 21일
How can I plot multiple polar diagram in one graph?
  댓글 수: 1
Chris
Chris 2015년 3월 16일
Why don't the axes handles work ? I have R2013a, and the docs say you get a handle from polar, and can pass this as the first parameter
K>> h = polar (t(1:5),r(1:5), '-*')
h =
1.8470e+03
K>> polar (h,t(6:end),r(6:end), '-O') Error using polar (line 23) Too many input arguments.

댓글을 달려면 로그인하십시오.

채택된 답변

Davide Ferraro
Davide Ferraro 2012년 4월 24일
The HOLD command should work:
t = 0:.01:2*pi;
polar(t,cos(2*t).*cos(2*t),'--k')
hold on
polar(t,sin(2*t).*cos(2*t),'--r')
  댓글 수: 3
Saad
Saad 2012년 4월 26일
Thanks :)
yonatan yamin
yonatan yamin 2022년 4월 21일
thanks it was very helpfull

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Walter Roberson
Walter Roberson 2012년 4월 24일
Probably the easiest way is to plot each of the diagrams on its own axes, and then use copyobj() to copy them on to one common axes.
polar() is implemented as creating a circular patch() object to hold the diagram, drawing in the spokes and discs, using text() to add labels, and using pol2cart() to convert the polar coordinates to cartesian coordinates for the purpose of drawing the graph itself.
polar() detects that presence of the patch() object and will not draw it again if it is present there. This is why you need to draw on different axes in order to be able to end up with multiple diagrams.
After you copyobj() you will need to offset all of the coordinates of all of the graphics objects so that they do not overlap. This will be a bit tricky as text() objects will only accept data coordinates, not pixel coordinates.
Also note that polar() creates two axes.
I would suggest that you might want to consider using subplot() instead of having multiple diagrams on the same graph.

카테고리

Help CenterFile Exchange에서 Polar Plots에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by