Main Content

La traduzione di questa pagina non è aggiornata. Fai clic qui per vedere l'ultima versione in inglese.

Grafici bidimensionali e tridimensionali

Grafici lineari

Per creare grafici lineari bidimensionali utilizzare la funzione plot. Ad esempio, tracciare la funzione seno su un vettore di valori spaziati linearmente da 0 a 2π:

x = linspace(0,2*pi);
y = sin(x);
plot(x,y)

È possibile impostare etichette per gli assi e aggiungere un titolo.

xlabel("x")
ylabel("sin(x)")
title("Plot of the Sine Function")

Aggiungendo un terzo argomento di input alla funzione plot è possibile tracciare le stesse variabili utilizzando una linea rossa tratteggiata.

plot(x,y,"r--")

"r--" è una specifica della linea. Ciascuna specifica può comprendere caratteristiche per colore, stile e marcatore della linea. Un marcatore è un simbolo riportato per ogni punto di dati tracciato, come +, o o *. Ad esempio, “g:*" richiede una linea verde punteggiata con i marcatori *.

Si noti che i titoli e le etichette definiti per il primo grafico non si trovano più nella finestra della figura corrente. Come impostazione predefinita, MATLAB® elimina la figura a ogni richiamo della funzione di plottaggio, resetta gli assi e altri elementi per preparare il nuovo grafico.

Per aggiungere grafici alla figura esistente utilizzare hold on. Fino a quando non si usa hold off o si chiude la finestra, tutti i grafici appaiono nella finestra della figura corrente.

x = linspace(0,2*pi);
y = sin(x);
plot(x,y)

hold on

y2 = cos(x);
plot(x,y2,":")
legend("sin","cos")

hold off

Grafici tridimensionali

I grafici tridimensionali solitamente visualizzano una superficie definita da una funzione in due variabili, z=f(x,y). Ad esempio, calcolare z=xe-x2-y2 dati i vettori riga e colonna x e y con 20 punti ciascuno nell’intervallo [-2,2].

x = linspace(-2,2,20);
y = x';
z = x .* exp(-x.^2 - y.^2);

Creare quindi un grafico a superficie.

surf(x,y,z)

Sia la funzione surf, sia la funzione dello stesso tipo mesh visualizzano superfici tridimensionali. surf visualizza a colori sia le linee di connessione che le superfici. mesh produce superfici wireframe in cui risultano colorate solo le linee di collegamento.

Grafici multipli

È possibile visualizzare più grafici in diverse parti della stessa finestra utilizzando tiledlayout o subplot.

La funzione tiledlayout è stata introdotta nella R2019b e fornisce un maggiore controllo sulle etichette e sulla spaziatura rispetto a subplot. Ad esempio, creare un layout 2x2 in una finestra della figura. Quindi, richiamare nexttile ogni volta che si desidera che un grafico appaia nella regione successiva.

t = tiledlayout(2,2);
title(t,"Trigonometric Functions")
x = linspace(0,30);

nexttile
plot(x,sin(x))
title("Sine")

nexttile
plot(x,cos(x))
title("Cosine")

nexttile
plot(x,tan(x))
title("Tangent")

nexttile
plot(x,sec(x))
title("Secant")

Se si sta utilizzando una versione antecedente alla R2019b, vedere subplot.