Dataset to Square Wave

1 view (last 30 days)
Martin Androvich
Martin Androvich on 30 Apr 2018
I have an array of datapoints; y being a boolean and x being some distance at which that boolean is changed.
I can plot it just fine, but I was wondering if there was an simple and quick way of converting the "usual" linear plot such that the data is represented with rising and falling edges, like a square wave, as pictured below:
I can do this manually, but there might be a neat way of doing so that I don´t know of.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 1 May 2018
a little awkward, but should serve you well
x=[0 32 37 45 53]';
y=[0 1 0 1 0]';
a=x([2:end,end]);
a=reshape([x,a]',[],1);
b=reshape([y,y]',[],1);
plot(a,b,'r*-')

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!