1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
% Données aléatoires
yA = rand(1,50);
yB = rand(1,50)+2;
% Ajout de NaN
idx = [8 15 30 45];
yA(idx) = nan;
yB(idx) = nan;
% Séparation en groupes
idx = [0 find(isnan(yA)) length(yA)+1];
for n=1:numel(idx)-1
idx2 = idx(n)+1:idx(n+1)-1;
yAt = yA(idx(n)+1:idx(n+1)-1);
yBt = yB(idx(n)+1:idx(n+1)-1);
vertices{n} = [idx2(:) yAt(:) ; idx2(end:-1:1).' yBt(end:-1:1).'];
end
% Affichage
figure
hold on
for n = 1:numel(vertices)
patch('vertices',vertices{n},'faces',1:size(vertices{n},1),'facecolor',[.8 .8 .8])
end |
Partager