How to plot a color shade instead of graph curves?
Show older comments
Hi,
I have say a lot of vertical curves overlapping each other as shown in te figure below: FIG 1, I want to plot them like color shade an example is shown below in FIG 2. How I can do it?
FIG 1

FIG 2

5 Comments
Image Analyst
on 19 Apr 2022
You forgot to attach your data, probably because you've never read the posting guidelines
Nisar Ahmed
on 19 Apr 2022
MJFcoNaN
on 19 Apr 2022
How will you define different colors in the Fig 2?
Image Analyst
on 19 Apr 2022
@Nisar Ahmed make it EASY for people to help you and they will. If you don't want to share your actual data, then make up something, like a for loop where you create a bunch of noisy sine waves or something. Don't make other people do that just to help you. You should do that for them, otherwise they'll just move on to another question.
There is nothing built in to MATLAB that does that so you'll have to use custom code. I know there was a question on that a few years ago and I answered it but I don't have the link right now.
Nisar Ahmed
on 19 Apr 2022
Answers (2)
Nisar Ahmed
on 19 Apr 2022
0 votes
KSSV
on 19 Apr 2022
How about this approach?
load('p0_t.mat') ;
x = t ;
y0 = min(p0(:)) ;
y1 = max(p0(:)) ;
y = linspace(y0,y1,300) ;
[X,Y] = meshgrid(x,y) ;
Z = NaN(size(X));
tt = repelem(t,7,1) ;
tt = tt' ;
m = 70 ; % can be changed
idx = knnsearch([X(:) Y(:)],[tt(:) p0(:)],'k',m) ;
for i = 1:m
Z(idx(:,i)) = p0(:) ;
end
p = pcolor(X,Y,Z) ;
p.EdgeColor = 'none' ;

1 Comment
Nisar Ahmed
on 19 Apr 2022
Categories
Find more on White in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!