
HELP! My for loop code won't produce a line on the graph I plot
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
When I run my code, results will appear but my results just won't show on the graph:
K = 1
i = sqrt(-1);
n=0;
for w = 0.1:1000
n=n+1;
A(n) = w;
G(n) = K/((i*w)*((i*w)+1.71)*((i*w)+100));
end
M(n) = abs(G(n));
F(n) = 20*log(M(n));
semilogx(w,F)
0 Kommentare
Antworten (2)
Ameer Hamza
am 10 Mär. 2020
Bearbeitet: Ameer Hamza
am 10 Mär. 2020
You were just plotting a single point. Check the indexing of variables after the for loop.
K = 1;
i = sqrt(-1);
n=0;
W = 0.1:1000;
for w = W
n=n+1;
A(n) = w;
G(n) = K/((i*w)*((i*w)+1.71)*((i*w)+100));
end
M = abs(G);
F = 20*log(M);
semilogx(W,F)

2 Kommentare
ME
am 10 Mär. 2020
I'm not 100% sure but I'd guess you want the last line to be:
semilogx(A,F)
because otherwise everything is plotting at the same value on the x-axis.
2 Kommentare
ME
am 10 Mär. 2020
Plots over the whole range of the x-axis for me. I guess the issue is that the line is right along the edge of the figure window. If you change the view of the axes or the axes limits then you'll be able to see the line.
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!