filling a 1D plot with colours associated to each sample value

I plotted a 1D signal in Matlab, and then I want to show the value of each specific sample by a district colour. something like what "imagesc" command does for 2D plots. I attached an example of what is in my mind. Any suggestions, please?

Answers (1)

You can use patch() and use your response values for both edges and the color data. You replace your data with SampleX and SampleY.
SampleX = (1220:1250)';
SampleY = rand (numel(SampleX), 1);
PatchX = vertcat (SampleX, flip(SampleX));
PatchY = vertcat (SampleY, zeros(numel(SampleY),1));
ColorData = vertcat (SampleY, flip(SampleY));
patch (PatchY, PatchX, ColorData);
colorbar ();

Categories

Find more on Surfaces, Volumes, and Polygons in Help Center and File Exchange

Asked:

on 2 Sep 2020

Commented:

on 2 Sep 2020

Community Treasure Hunt

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

Start Hunting!