Why does the Bode function behaves differently in a subplot?

11 visualizaciones (últimos 30 días)
laszlo
laszlo el 15 de Dic. de 2014
Comentada: laszlo el 6 de En. de 2015
Hi,
I want to run a script several times in a row, where every run new lines are plotted in a Bode diagram. This does not work when I use subplots, see the simple example below. Both lines are plotted this way, but the first line disappears when the 2 lines are uncommented and the example is rerun. So how can I plot these 2 lines in 1 Bode subplot? Thank you in advance!
Best regards, Laszlo
H = tf([1],[100]);
figure(100)
% subplot(2,1,1)
hold on
bodemag(H)
grid on
defcol
H = tf([1],[1 0 0]);
figure(100)
% subplot(2,1,1)
hold on
bodemag(H)
grid on
defcol

Respuestas (2)

Arkadiy Turevskiy
Arkadiy Turevskiy el 5 de En. de 2015
This works:
H = tf([1],[100]);
figure(100)
subplot(2,1,1);
[mag,ph,wout]=bode(H);
semilogx(wout,20*log10(squeeze(mag)));
grid on
xlabel('Frequency (rad/sec)');
ylabel('Magnitude (dB)');
title('Bode Diagram');
hold on;
H = tf([1],[1 1 0]);
figure(100)
subplot(2,1,1)
[mag,ph,wout]=bode(H);
semilogx(wout,20*log10(squeeze(mag)));

Thorsten
Thorsten el 15 de Dic. de 2014
This litte script works for me; maybe something unexpected is going on in your bodemag function?
function plotdata(s)
figure(100)
subplot(2,1,1)
hold on
plot(1:10, s*rand(1,10), 'k')
grid on
figure(100)
subplot(2,1,1)
hold on
plot(1:10, s*rand(1,10), 'r')
grid on
  3 comentarios
Thorsten
Thorsten el 15 de Dic. de 2014
I don't have the System Identification TB, so I have to ask if this works for you:
bodemag(gca, H)
laszlo
laszlo el 15 de Dic. de 2014
Too bad, that does not solve the problem.

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by