MATLAB Answers

Add cartesian axes to polarscatter?

2 views (last 30 days)
Hi,
I would like to know if t's possible to add cartesian axes onto a polar scatter plot like in this picture.
Haven't found any solution for this problem.
Thank you very much!

Accepted Answer

Pavan Guntha
Pavan Guntha on 31 Mar 2021
Hi Maximilian,
You could try the following workaround:
1) You could make use of axes and polaraxes commands and their properties to add to the same figure window as illustrated in the code below:
th = pi/6:pi/6:2*pi;
r1 = rand(12,1);
figure(1);
clf
xl = 'X (mm)';
yl = 'Y (mm)';
axes1 = axes("XLim", [-3 3], "YLim", [-3 3], "Box","on");
axes2 = polaraxes;
axes2.RLimMode = 'manual';
rlim(axes2, [0 0.5]);
hold on
polarscatter(axes2,th,r1,'filled')
r2 = rand(12,1);
polarscatter(axes2,th,r2,'filled')
hold off
axes2.Position = [0.165 0.165 0.7 0.7];
You could vary the Position and Units properties of polaraxes to place the polarplot at appropriate place on the figure. The plot for the above code is as follows:
Hope this helps!

More Answers (0)

Community Treasure Hunt

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

Start Hunting!