Polar Plot for 2 element antennas

3 次查看(过去 30 天)
I have this code, would like to get plot (b) instead of (a)
%======================
n=2;
k=2;
delta=pi/120;
phi=0:0.0001:2*pi;
s=((2*pi*cos(phi)/k)+delta);
E=(sin(n*s/2))./(n*sin(s/2));
a=[phi,E];
plot(s);
figure;polar(phi, abs(E));

采纳的回答

Henry Giddens
Henry Giddens 2018-8-31
Firstly, I would use the polarplot function instead of polar. Then you couls just plot a single point at the coordinate that you want to display the elements?
%======================
%Your code
n=2;
k=2;
delta=pi/120;
phi=0:0.0001:2*pi;
s=((2*pi*cos(phi)/k)+delta);
E=(sin(n*s/2))./(n*sin(s/2));
a=[phi,E];
plot(s);
hFig = figure;
L1 = polarplot(phi, abs(E));
pax = gca;
hold on;
polarplot(pax,0,0.25,'ro')
polarplot(pax,pi,0.25,'ro')
The rest of it is just formatting options:
pax.RLim = [0 1.2];
pax.RTick = [0:0.2:1];
pax.ThetaLim = [-180 180];
L1.LineWidth = 2;
hFig.Color = [1 1 1];
%Title('Two-element...');

更多回答(0 个)

类别

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