Contenu principal

Créer des graphiques 3D

Cet exemple montre comment créer divers graphiques 3D dans MATLAB®.

Tracé maillé

La fonction mesh crée un maillage filaire. Par défaut, la couleur du maillage est proportionnelle à la hauteur de la surface.

z = peaks(25);

figure
mesh(z)

Figure contains an axes object. The axes object contains an object of type surface.

Tracé de surface

La fonction surf permet de créer un tracé de surface 3D.

surf(z)

Figure contains an axes object. The axes object contains an object of type surface.

Tracé de surface (avec ombrage)

La fonction surfl crée un tracé de surface avec un éclairage basé sur une palette de couleurs. Pour des transitions plus douces entre les couleurs, utilisez une palette de couleurs à variation d’intensité linéaire, par exemple pink.

surfl(z)
colormap(pink)    % change color map
shading interp    % interpolate colors across lines and faces

Figure contains an axes object. The axes object contains an object of type surface.

Courbe de niveau

La fonction contour permet de créer un graphique avec des lignes de niveau de valeur constante.

contour(z,16)
colormap default    % change color map

Figure contains an axes object. The axes object contains an object of type contour.

Tracé de champ de vecteurs

La fonction quiver trace les vecteurs 2D sous forme de flèches.

x = -2:.2:2; 
y = -1:.2:1;

[xx,yy] = meshgrid(x,y);
zz = xx.*exp(-xx.^2-yy.^2);
[px,py] = gradient(zz,.2,.2);

quiver(x,y,px,py)
xlim([-2.5 2.5])    % set limits of x axis

Figure contains an axes object. The axes object contains an object of type quiver.

Coupes de volumes 3D

La fonction slice affiche les données dans des plans qui coupent les données volumétriques.

x = -2:.2:2;
y = -2:.25:2;
z = -2:.16:2;

[x,y,z] = meshgrid(x,y,z);
v = x.*exp(-x.^2-y.^2-z.^2);

xslice = [-1.2,.8,2];    % location of y-z planes
yslice = 2;              % location of x-z plane
zslice = [-2,0];         % location of x-y planes

slice(x,y,z,v,xslice,yslice,zslice)
xlabel('x')
ylabel('y')
zlabel('z')

Figure contains an axes object. The axes object with xlabel x, ylabel y contains 6 objects of type surface.