# Show Step Response Information on Step Response Plot

42 views (last 30 days)
MatlabNewbie01232015 on 12 Oct 2013
Commented: James Richard on 22 Nov 2018
Normally, if I want to display the information of the Step Response (peak, rise time, etc). I click on the plot and select "Characteristics > Peak Response",etc. I intend to design a Gui (very basic one) that the Step Response will automatically show these information at run-time.
step(handles.axes_step,sys, stepinfo(sys)) %I have trouble with the show stepinfo on the plot. If I cannot find a way, I just let it be but I guess there should be a way.
##### 0 CommentsShow -2 older commentsHide -2 older comments

Sign in to comment.

### Accepted Answer

Jonathan LeSage on 14 Oct 2013
You're on the right track trying to use stepinfo. The stepinfo function returns a structure containing all the common step response metrics. You can directly plot the these results. Here is some example code to get you started:
% Defining an arbitrary system
s = tf('s');
G = 1/(s^2 + 5*s + 2);
% Computing the system step response
[y,t] = step(G);
stepResults = stepinfo(y,t);
% Extract the settling time from the stepinfo structure
tSettle= stepResults.SettlingTime;
% Other step response results of interest can be found by looking in
% the stepResults structure
% Find the first index where time exceeds the settling time
% To further improve this, you could interpolate between the points.
indexSettle = find(t >= tSettle,1,'first');
xSettle = t(indexSettle);
ySettle = y(indexSettle);
% Plot step response
plot(t,y);
grid on;
hold on;
% Plot settling time point
plot(xSettle,ySettle,'ro');
% Plot chart lines to settling point
plot([0 xSettle],[ySettle ySettle],'g-.');
plot([xSettle xSettle],[0 ySettle],'g-.');
hold off;
You could easily repeat this same process for each step response metric of interest. Hope this helps!
##### 1 CommentShow -1 older commentsHide -1 older comments
MatlabNewbie01232015 on 15 Oct 2013
Very nice - I understand the approach - well I still need to learn but the example is very clear and easy to follow.

Sign in to comment.

### More Answers (3)

Jeffry on 4 Nov 2018
sys = tf(1,[1 .5]);
h = stepplot(sys);
grid on
% characteristics are those found under h.CharacteristicManager.CharacteristicID
h.showCharacteristic('PeakResponse')
h.showCharacteristic('RiseTime')
##### 1 CommentShow -1 older commentsHide -1 older comments
James Richard on 22 Nov 2018
Go to
[Your Installation Directory]\toolbox\shared\controllib\graphics\@wrfc\@plot\
for more information on this topic
because showCharacteristic.m file is also available there

Sign in to comment.

Tekno on 6 Mar 2018
dear Jonathan LeSage i have data in figure , how can i get the step info from it? im using matlab 2015 version, please your support.
##### 0 CommentsShow -2 older commentsHide -2 older comments

Sign in to comment.

SimTec on 24 May 2018
what if we don't have the math model in my case, I saved data to "to Workspace" but got erros
##### 0 CommentsShow -2 older commentsHide -2 older comments

Sign in to comment.

### Categories

Find more on Time and Frequency Domain Analysis in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!