Polar Plot for 2 element antennas

3 Ansichten (letzte 30 Tage)
Aswas
Aswas am 30 Aug. 2018
Beantwortet: Henry Giddens am 31 Aug. 2018
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));

Akzeptierte Antwort

Henry Giddens
Henry Giddens am 31 Aug. 2018
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...');

Weitere Antworten (0)

Kategorien

Mehr zu Polar Plots finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by