Info

此问题已关闭。 请重新打开它进行编辑或回答。

Beginner's question about data plot

1 次查看(过去 30 天)
Raimund Herberg
Raimund Herberg 2019-12-3
关闭: MATLAB Answer Bot 2021-8-20
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 个评论
KALYAN ACHARJYA
KALYAN ACHARJYA 2019-12-3
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
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-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
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 个评论
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
To get a plot with sharp, not sloping, edges, use stairs() or bar().

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by