《MATLAB编程》例题-画极坐标图像

使用极坐标画图

在这里插入图片描述
翻译:
在这里插入图片描述
输入以下程序

theta=-pi*1/2:pi/20:pi*1/2;
gain=abs(sin(4*theta)/(4*theta));
polar(theta,gain,'r-');
title('\fontsize{20} \bf Antenna Gain vs \theta');

出现问题:THETA 和 RHO 的大小必须相同
在这里插入图片描述
极坐标只有两个变量,一个角度(theta),一个是半径(rho),指的是没哟个角度都应该对应着一个半径
解决办法:
下面展示一些 内联代码片

theta=-pi*1/2:pi/20:pi*1/2;
 gain=abs(sin(4*theta)./(4*theta));
 %数组除应该用点除!!!
 polar(theta,gain,'r-');
title('\fontsize{20} \bf Antenna Gain vs \theta');

在这里插入图片描述
但是这个图像仍然不完整,应该手动给分母为0的点赋值,间隙足够小
下面展示一些 内联代码片

theta=-pi*1/2:0.1:pi*1/2;
if theta==0
    gain=1;
else
    gain=abs(sin(4*theta)./(4*theta));
end
 polar(theta,gain,'r-');
title('\fontsize{20} \bf Antenna Gain vs \theta');

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_44292038/article/details/115032422
今日推荐