Trying to plot function
Show older comments
Hey, so ihave been asked to plot this function

I found a way to do this
syms x
y=piecewise(x<-4, 0, -4<=x<3, x+2, x>=3, x-2);
fplot(y)
and i get this graph

Now, when i try another way to do this
i get this graph

this is the code
t = linspace(1,1000,1000); %%time
X1=@(t) (t<=-4).*0+(t>=-4 & t<3).*(t+2)+(t>=3).*(t-2);
subplot(2,2,1)
plot (t,X1(t))
axis([-6 6 -20 20]);
Im trying to understand why this way (the second graph) doesnt work.
Thnx.
4 Comments
Michael Van de Graaff
on 1 Apr 2021
well for one thing, in the second instance you are defining you x-coordinates as going from 1 to 1000, so no, you wont have anything plotted below x=1
Naor t
on 1 Apr 2021
Michael Van de Graaff
on 1 Apr 2021
also, i'm confused, can you tell me which point on you plot is incorrect?
are you aware that you are plotting only integer X values and the line is just connecting the dot's
Michael Van de Graaff
on 1 Apr 2021
Oh, you need
t = linspace(-6,6,1000);
Accepted Answer
More Answers (0)
Categories
Find more on Mathematics 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!