MATLAB: Polarplot with negative theta display

polarplot

Hi everyone, I have used the polarplot function in Matlab. The theta axis by default will be from 0 to 360 degree. But I would like to display theta from -150 to 180, similar to the attached figure. Could you please help? Thanks

Best Answer

You can plot it by tuning axes properties, like:
% Sample data
theta = deg2rad(-150:30:180);
rho = 10*rand(size(theta));
% Polar plot with [-180 180] degree
polarplot(theta,rho)
ax = gca;
ax.ThetaLim = [-180 180];
ax.ThetaZeroLocation = 'top';
ax.ThetaDir = 'clockwise';