How to plot this stepfunction
Show older comments
Hello,
I am trying to plot a step function can be seen below. Any help will be highly appreciated. Thank you.

Answers (1)
Star Strider
on 23 Sep 2018
For the unit step function, you can use the Symbolic Math Toolbox heaviside function, or this anonymous function:
ustp = @(t) +(t>0); % Simple Unit Step Function
I leave the rest to you.
Remember to use element-wise operations for the multiplications. See the documentation page on Array vs. Matrix Operations (link) and Vectorization (link).
4 Comments
Younes Alawaji
on 23 Sep 2018
Star Strider
on 23 Sep 2018
I will give you an illustration, and let you take it from here:
t = linspace(-10, 20, 1E+6);
f = @(t) sin(2*pi*t).*cos(2*pi*t*0.1);
figure
plot(t, f(t).*ustp(t-5))
grid
Note specifically the argument to ‘ustp’ with respect to the resulting plot.
Younes Alawaji
on 23 Sep 2018
Edited: Younes Alawaji
on 23 Sep 2018
Star Strider
on 23 Sep 2018
My pleasure.
My code is intended to illustrate how to combine the unit step function (my ‘ustp’ anonymous function) with another function to create the desired result. You cannot simply use it without modifying your code.
Also, you have to copy my ‘ustp’ function to the beginning of your script file. My code should then work.
Categories
Find more on Creating, Deleting, and Querying Graphics Objects 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!