Beginner's question about data plot
Info
This question is closed. Reopen it to edit or answer.
Show older comments

The data used for this plot is a series of 0's followed by a series of 1's, then back to 0's. I expected to see a 0-1-0 pulse shaped signal starting at around 15 minutes and ending just before 50 minutes, but instead I see a starting and trailing slope. What causes this behavior? The code is as simple as it gets:
figure(1), plot(time,Enable_d)
title('Signal Enabled')
xlabel('Time (min)')
2 Comments
KALYAN ACHARJYA
on 3 Dec 2019
How you expected to switch from 1 to 0, in plot its connect both data points have you look at stem?
figure(1), stem(time,Enable_d)
title('Signal Enabled')
xlabel('Time (min)')
Raimund Herberg
on 3 Dec 2019
Answers (4)
the cyclist
on 3 Dec 2019
Try this instead
plot(time,Enable_d,'.','MarkerSize',32)
This code will plot individual points, without a connecting line.
Raimund Herberg
on 3 Dec 2019
0 votes
1 Comment
the cyclist
on 3 Dec 2019
How do you expect MATLAB to "know" how to fill in the gap from 15 to 40? How can it know you want it to be 1 right after Time = 15, rather than 0, or 0.5, or 0.73245?
The answer is -- MATLAB can't know what to plot there unless to program it to.
Raimund Herberg
on 3 Dec 2019
0 votes
4 Comments
the cyclist
on 3 Dec 2019
Edited: the cyclist
on 3 Dec 2019
It seems pretty clear from the plot (using my answer) that you have no data between 15 minutes and 40 minutes, or before about 13 minutes or so. (You might want to make the MarkerSize a little bit smaller than the 32 I chose, to see the individual data points better.)
Can you upload the data in a *.mat file?
Also, you keep "answering" your question, rather than commenting on other answers, which will get very confusing (especially if people start upvoting some answers).
Raimund Herberg
on 3 Dec 2019
Image Analyst
on 3 Dec 2019
Did stairs() like in my answer not work? Did you even try it?
Raimund Herberg
on 3 Dec 2019
Image Analyst
on 3 Dec 2019
0 votes
To get a plot with sharp, not sloping, edges, use stairs() or bar().
This question is closed.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
