Spikes in my heaviside function/step functions
古いコメントを表示
I am trying to plot a simple unit step function (below) using the heaviside function.
x(t) =u(t)−u(t−2)
t = -10:.01:10;
x = heaviside(t) - heaviside(t-2);
plot(x)
The plot results in a unit step function with spikes at 4 and -3.

So far my solutions have been editing in the correct values at the appropriate indexes, but it has been getting very tedious. What could be causing this issue? I am also using the 2018b edition and have not noticed this in previous versions.
2 件のコメント
Asad Mirza
2019 年 2 月 26 日
編集済み: Asad Mirza
2019 年 2 月 26 日
Not sure why but when I run the code it comes out without any strange spikes. I am also using MATLAB 2018b.

Just checked it with both MATLAB Online and Octave and I get the same results


Walter Roberson
2019 年 3 月 1 日
Also, be careful about what heaviside(0) means. See sympref('HeavisideAtOrigin')
回答 (1 件)
Munish Raj
2019 年 3 月 1 日
Hello Samantha,
The plot in your picture is a mixture of two different plots. It has the intended heaviside as expected.
As you can notice, the y axis of the plot is from [-3 4]. However, the expected heaviside function is plotted in [1 0] on the y axis.
Also please make sure there is no previous plot.
Use the hold off command before plotting the heaviside function.
hold off
to make sure that a new plot is being plotted.
3 件のコメント
Samantha Zhao
2019 年 3 月 7 日
Munish Raj
2019 年 3 月 7 日

The red highlighted plot is the heaviside plot that you are looking for.
The other parts are the extra plots, possibly from another plot function.
Samantha Zhao
2019 年 3 月 7 日
カテゴリ
ヘルプ センター および File Exchange で 2-D and 3-D Plots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!