How to plot a color shade instead of graph curves?
1 ビュー (過去 30 日間)
表示 古いコメント
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

回答 (2 件)
KSSV
2022 年 4 月 19 日
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' ;

参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!