Creazione di grafici a griglia e a superficie
Informazioni sui grafici a griglia e a superficie
MATLAB® definisce una superficie tramite le coordinate z di punti su una griglia nel piano x-y, utilizzando linee diritte per connettere i punti adiacenti. Le funzioni mesh
e surf
visualizzano le superfici in modalità tridimensionale.
mesh
produce superfici wireframe in cui risultano colorate solo le linee di connessione dei punti di definizione.surf
visualizza a colori sia le linee di connessione che le facce delle superfici.
MATLAB colora le superfici mappando i valori dei dati z agli indici nella mappatura dei colori della figura.
Visualizzazione delle funzioni di due variabili
Per visualizzare una funzione di due variabili z = f (x,y),
Generare le matrici
X
eY
formate rispettivamente da righe e colonne ripetute, sul dominio della funzione.Utilizzare
X
eY
per valutare e creare il grafico della funzione.
La funzione meshgrid
trasforma il dominio specificato da un singolo vettore o da due vettori x
e y
in X
e Y
in matrici da utilizzare per la valutazione delle funzioni di due variabili. Le righe di X
sono copie del vettore x
e le colonne di Y
sono copie del vettore y
.
Creazione del grafico della funzione sinc
Questo esempio mostra come valutare e creare il grafico della funzione bidimensionale sinc
, sin(R)/R, tra le direzioni x e y. R è la distanza dall'origine, che si trova al centro della matrice. L'aggiunta di eps
(un valore estremamente piccolo) evita la formazione di un buco nella griglia nel punto in cui R = 0
.
[X,Y] = meshgrid(-8:.5:8); R = sqrt(X.^2 + Y.^2) + eps; Z = sin(R)./R; mesh(X,Y,Z)
Per impostazione predefinita, MATLAB utilizza la mappa dei colori corrente per colorare la griglia.
Grafici a superficie colorati
Questo esempio mostra come tracciare il grafico della funzione sinc
come grafico a superficie, specificare una mappatura dei colori e aggiungere una barra dei colori per mostrare la mappatura dei dati rispetto al colore.
Un grafico a superficie è simile a un grafico a griglia, tranne per il fatto che le facce rettangolari sulla superficie risultano colorate. Il colore di ciascuna faccia è determinato dai valori di Z
e la mappatura dei colori (una mappatura dei colori è un elenco ordinato dei colori).
[X,Y] = meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
surf(X,Y,Z)
colormap hsv
colorbar
Impostazione della trasparenza per le superfici
Questo esempio mostra come rendere trasparenti le facce di una superficie in gradi diversi. La trasparenza (a cui si fa riferimento come valore alfa) può essere specificata per l'intero oggetto oppure essere basata su un'alphamap
, che si comporta in modo simile alle mappature dei colori.
[X,Y] = meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
surf(X,Y,Z)
colormap hsv
alpha(.4)
MATLAB visualizza una superficie con un valore alfa delle facce di 0,4. I valori di alfa vanno da 0 (completamente trasparente) a 1 (non trasparente).
Illuminazione dei grafici a superficie con sorgenti di illuminazione
Questo esempio mostra le stesse superfici dell'esempio precedente, ma colorate in rosso e senza le linee della griglia. Alla sinistra della 'videocamera' (cioè la posizione nello spazio da cui si visualizza la superficie) viene poi aggiunta una sorgente di illuminazione.
[X,Y] = meshgrid(-8:.5:8); R = sqrt(X.^2 + Y.^2) + eps; Z = sin(R)./R; surf(X,Y,Z,'FaceColor','red','EdgeColor','none') camlight left; lighting phong
L'illuminazione è la tecnica che utilizza una sorgente di luce direzionale su un oggetto. In alcuni casi questa tecnica può rendere più evidenti alcune lievi differenze nella forma della superficie. L'illuminazione consente anche di rendere più realistici i grafici tridimensionali.
Manipolazione della superficie
La barra degli strumenti delle figure e la barra degli strumenti della videocamera offrono alcuni metodi per esplorare i grafici tridimensionali in modo interattivo. Per visualizzare la barra degli strumenti della videocamera selezionare Camera Toolbar dal menu della figura View.
La figura seguente mostra entrambe le barre degli strumenti con lo strumento Rotate 3D selezionato.
Questi strumenti consentono di muovere la videocamera attorno alla superficie degli oggetti, di selezionare lo zoom, di aggiungere l'illuminazione e di eseguire altre operazioni di visualizzazione senza ricorrere ai comandi.