Why these two codes produce different graphs? How can I make the second graph be like the first?

2 ビュー (過去 30 日間)
Why these two codes produce different graphs? How can I make the second graph be like the first?
1st:
t=0:0.3:10;
step(c2d(tf(1,[1 1]),0.3),t);
2nd:
t=0:0.3:10;
[y,t]=step(c2d(tf(1,[1 1]),0.3),t);
plot(t,y)

採用された回答

Arnaud Miege
Arnaud Miege 2011 年 6 月 17 日
Fangjun's correct. To get the same plot, use stairs:
stairs(t,y)
HTH,
Arnaud

その他の回答 (1 件)

Fangjun Jiang
Fangjun Jiang 2011 年 6 月 17 日
The results are same if you see it like this.
figure;
plot(t,y,'+');
I think the reason is: you are calculating the step response of a discrete system so the plot shown in your first step() line shows the results as the value at every discrete time step. The plot shown in your plot() line is interpreted by the plot() command.
See also
step(tf(1,[1 1]),t)

カテゴリ

Help Center および File ExchangeLine Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by