2017-08-29 4 views
2

Est-il possible d'utiliser différents types shading dans la même figure?Utiliser un ombrage différent dans la même figure

Par exemple, ce code:

figure; hold on 
surf(1:10,1:10,repmat(1,10,10),rand(10)) 
shading flat; hold on 
surf(1:10,1:10,repmat(3,10,10),rand(10)) 
shading flat; hold on 
surf(1:10,1:10,repmat(5,10,10),rand(10)) 
shading interp 
view(-15,32) 

résultats dans: example

Alors que le dernier shading détermine le type interp pour tous les objets de la figure.

Y a-t-il du travail?

Répondre

1

Par défaut, 'FaceColor' est flat et 'EdgeColor' est black lorsque vous utilisez surf.
shading flat définit 'FaceColor' comme 'flat' et 'EdgeColor' comme none.
shading interp définit 'FaceColor' comme 'interp' et 'EdgeColor' comme none.

Vous pouvez spécifier ces propriétés comme ceci:

figure; 
surf(1:10,1:10,repmat(1,10,10),rand(10),'EdgeColor','none'); 
hold on;  %You don't need to use hold on again and again 
surf(1:10,1:10,repmat(3,10,10),rand(10),'EdgeColor','none'); 
surf(1:10,1:10,repmat(5,10,10),rand(10),'FaceColor', 'interp','EdgeColor','none'); 
view(-15,32); 

qui donne:

output

ou d'obtenir une poignée à chaque parcelle de surface et de changement qui plus tard comme le montre la documentation.