Beginner's question about data plot

0-1-0 Signal.jpg
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

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
Raimund Herberg 2019년 12월 3일
0-1-0 Signal-v2.jpg
stem and stairs show similar behavior - a pulse between 40 and 50 minutes. But the corresponding data is '0' from 0 minutes to 15 minutes, '1' from 15 minutes to 50 minutes, then again '0' from 50 minutes to 80 minutes.

답변 (4개)

the cyclist
the cyclist 2019년 12월 3일

0 개 추천

Try this instead
plot(time,Enable_d,'.','MarkerSize',32)
This code will plot individual points, without a connecting line.
Raimund Herberg
Raimund Herberg 2019년 12월 3일

0 개 추천

0-1-0 Signal-v3.jpg
We are not quite there - still a '1' signal gap between 15 minutes and 40 minutes

댓글 수: 1

the cyclist
the cyclist 2019년 12월 3일
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
Raimund Herberg 2019년 12월 3일

0 개 추천

The data is only 0's and 1's, binary, nothing else.
'0's from 1 minutes to 15 minutes, '1's from 15 minutes to 50 minutes, then again '0's from 50 minutes to 80 minutes.

댓글 수: 4

the cyclist
the cyclist 2019년 12월 3일
편집: the cyclist 2019년 12월 3일
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
Raimund Herberg 2019년 12월 3일
You are 100% correct, there are gaps in the data, see the attached excel file.
I was recently assigned to check the sizeable data collection related to a mile-long script and tripped over a few things that were all along assumed to be ok. I extracted data that I was suspicious of and created with it the simple plot depicted at the beginning of this trail.
To my bad I did not compare data and the specific timeline side by side. Instead i just looked at the data and could not understand why the plot function created a slope between 15 minutes and 40 minutes. Beginner's mistake, not to be repeated. Your suggested solution "plot(time,Enable_d,'.','MarkerSize',32)" is right on. Many thanks!!!
And this interaction also taught me a lot about the plot function.
Image Analyst
Image Analyst 2019년 12월 3일
Did stairs() like in my answer not work? Did you even try it?
Raimund Herberg
Raimund Herberg 2019년 12월 3일
Yes, I tried it as well, works beautifully!
Thanks a lot for your support.
Image Analyst
Image Analyst 2019년 12월 3일

0 개 추천

To get a plot with sharp, not sloping, edges, use stairs() or bar().

이 질문은 마감되었습니다.

제품

릴리스

R2018b

질문:

2019년 12월 3일

마감:

2021년 8월 20일

Community Treasure Hunt

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

Start Hunting!

Translated by