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

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 MATLAB 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!