Main Content

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

Funzioni di plottaggio di base

Creazione di grafici

La funzione plot presenta forme diverse a seconda degli argomenti di input.

  • Se y è un vettore, plot(y) produce una linea grafica a tratti degli elementi di y rispetto agli elementi di y.

  • Se come argomenti si specificano due vettori, plot(x,y) produce un grafico di y rispetto a x.

Utilizzare l'operatore virgola per creare un vettore dei valori di x compresi tra 0 e 2π, calcolare il seno di questi valori e creare un grafico dei risultati.

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)

Aggiungere le etichette degli assi e un titolo. I caratteri \pi nella funzione xlabel creano il simbolo π. La proprietà FontSize nella funzione title aumenta le dimensioni del testo utilizzato per il titolo.

xlabel('x = 0:2\pi')
ylabel('Sine of x')
title('Plot of the Sine Function','FontSize',12)

Plottaggio di più serie di dati in un grafico

Argomenti multipli della coppia x-y creano più grafici con una singola chiamata a plot. MATLAB® utilizza un colore diverso per ciascuna linea.

Ad esempio, queste dichiarazioni creano il grafico delle tre funzioni correlate di x:

x = 0:pi/100:2*pi;
y = sin(x);
y2 = sin(x-.25);
y3 = sin(x-.5);
plot(x,y,x,y2,x,y3)

La funzione legend offre un modo semplice di identificare le singole linee:

legend('sin(x)','sin(x-.25)','sin(x-.5)')

Impostazione degli stili di linee e colori

Quando si crea un grafico dei dati con il comando plot è possibile specificare colore, stile delle linee e marcatori (come segni 'più' o cerchi):

plot(x,y,'color_style_marker')

color_style_marker contiene da uno a quattro caratteri (racchiusi tra apici) costruiti da un colore, uno stile di linea e un tipo di marcatore. Ad esempio,

plot(x,y,'r:+')

esegue il plottaggio dei dati utilizzando una linea rossa punteggiata e inserisce un marcatore + in corrispondenza di ciascun punto di dati.

color_style_marker è composto dalla combinazione dei seguenti elementi.

TipoValoriSignificato
Colore'c'
'm'
'y'
'r'
'g'
'b'
'w'
'k'
ciano
magenta
giallo
rosso
verde
blu
bianco
nero
Stile delle linee'-'
'--'
':'
'-.'
nessun carattere
continua
tratteggiata
punteggiata
alternanza di trattini e punti
nessuna linea
Tipo di marcatore'+'
'o'
'*'
'x'
's'
'd'
'^'
'v'
'>'
'<'
'p'
'h'
nessun carattere
segno più
cerchio vuoto
asterisco
lettera x
quadrato vuoto
rombo vuoto
triangolo vuoto rivolto in alto
triangolo vuoto rivolto in basso
triangolo vuoto rivolto a destra
triangolo vuoto rivolto a sinistra
pentagramma vuoto
esagramma vuoto
nessun marcatore

Plottaggio di righe e marcatori

Se si specifica un tipo di marcatore, ma non uno stile di linea, MATLAB® crea il grafico utilizzando solo marcatori, senza linee. Ad esempio,

plot(x,y,'ks')

esegue il plottaggio di quadrati neri in corrispondenza di ciascun punto di dati, ma non collega i marcatori con una linea.

La dichiarazione

plot(x,y,'r:+')

esegue il plottaggio di una linea rossa punteggiata e inserisce dei marcatori 'più' in corrispondenza di ciascun punto di dati.

Posizionamento di marcatori ogni dieci punti di dati

Questo esempio mostra come utilizzare meno punti di dati per il plottaggio dei marcatori rispetto a quanto avviene con il plottaggio delle linee. Questo esempio esegue due volte il plottaggio dei dati utilizzando un diverso numero di punti per il plottaggio della linea punteggiata e del marcatore.

x1 = 0:pi/100:2*pi;
x2 = 0:pi/10:2*pi;
plot(x1,sin(x1),'r:',x2,sin(x2),'r+')

Creazione di grafici a partire da dati immaginari e complessi

Quando valori complessi come argomenti vengono passati aplot, MATLAB ignora la parte immaginaria, tranne quando si passa un singolo argomento complesso. In questo caso speciale, il comando rappresenta una scorciatoia per un grafico della parte immaginaria rispetto alla parte reale. Quindi,

plot(Z)

dove Z è un vettore complesso o matrice, è equivalente a

plot(real(Z),imag(Z))

Le seguenti dichiarazioni tracciano un poligono a 20 lati con dei circoletti ai vertici.

t = 0:pi/10:2*pi;
plot(exp(1i*t),'-o')
axis equal

Il comando axis equal imposta sulla stessa lunghezza i singoli incrementi contrassegno-marcatore sugli assi x e y, il che rende questo grafico più circolare nell'aspetto.

Aggiunta di plottaggi a un grafico esistente

Il comando hold consente di aggiungere plottaggi a un grafico esistente. Quando si digita

hold on

MATLAB non sostituisce il grafico esistente quando si utilizza un altro comando di plottaggio. MATLAB combina invece il nuovo grafico con quello corrente.

Ad esempio, queste dichiarazioni creano per prima cosa un plottaggio a superficie della funzione peaks, quindi sovrappongono un plottaggio di contorno della stessa funzione.

[x,y,z] = peaks;
% Create surface plot
surf(x,y,z)
% Remove edge lines a smooth colors
shading interp
% Hold the current graph 
hold on
% Add the contour graph to the pcolor graph
contour3(x,y,z,20,'k')
% Return to default
hold off

Finestre delle figure

Le funzioni di plottaggio aprono automaticamente una nuova finestra delle figure, se non vi sono figure già create. Se vi sono più finestre delle figure aperte, MATLAB utilizza quella designata come "figura corrente"; solitamente si tratta dell'ultima utilizzata.

Per rendere "corrente" una finestra delle figure già esistente è possibile fare clic con il mouse mentre il puntatore si trova all'interno di quella finestra, oppure digitare

figure(n)

dove n è il numero nella barra del titolo della figura.

Per aprire una nuova finestra delle figure e renderla "corrente", digitare

figure

Cancellazione della figura per un nuovo plottaggio

Quando una figura esiste già, la maggior parte dei comandi di plottaggio cancella gli assi e utilizza questa figura per creare il nuovo grafico. Questi comandi, tuttavia, non resettano le proprietà della figura, come il colore dello sfondo o la mappatura dei colori Se si sono impostate delle proprietà delle figure nel grafico precedente, è possibile utilizzare il comando clf con l'opzione reset,

clf reset

prima di creare il nuovo grafico per ripristinare le proprietà predefinite della figura.

Visualizzazione di più plottaggi in una figura

Il comando subplot consente di visualizzare più plottaggi nella stessa finestra, oppure di stamparli sullo stesso foglio. Digitando

subplot(m,n,p)

si suddivide la finestra delle figure in una matrice mxn di sub-plottaggi piccoli; per il plottaggio corrente viene selezionato il pesimo sub-plottaggio. I plottaggi sono numerati lungo la prima riga della finestra delle figure, poi lungo la seconda riga e così via. Ad esempio, queste dichiarazioni effettuano il plottaggio dei dati in tre regioni secondarie della finestra delle figure.

x = 0:pi/20:2*pi;
subplot(3,1,1); plot(sin(x))
subplot(3,1,2); plot(cos(x))
subplot(3,1,3); plot(sin(x).*cos(x))

Controllo degli assi

Il comando axis offre diverse opzioni per impostare dimensioni, orientamento e rapporto dell'aspetto dei grafici.

Limiti automatici di un asse e marcature delle tacche

Per impostazione predefinita, MATLAB trova i valori massimi e minimi dei dati e sceglie i limiti dell'asse da includere in questo range. MATLAB seleziona i limiti e i valori del marcatore delle tacche dell'asse per creare un grafico che visualizza i dati in modo chiaro. Si possono tuttavia impostare limiti personalizzati con le funzioni axis o xlim, ylim e zlim.

Nota

Il cambiamento dei limiti di un asse può comportare la modifica di altri limiti per una miglior rappresentazione dei dati. Per disattivare l'impostazione automatica di questi limiti immettere il comando axis manual.

Impostazione dei limiti degli assi

Il comando axis consente di specificare dei limiti personalizzati:

axis([xmin xmax ymin ymax])

o, per i grafici tridimensionali,

axis([xmin xmax ymin ymax zmin zmax])

Utilizzare il comando

axis auto

per attivare nuovamente la selezione dei limiti automatici.

Impostazione del rapporto dell'aspetto degli assi

Il comando axis consente anche di specificare un numero di modalità predefinite. Ad esempio,

axis square

adatta alla stessa lunghezza gli assi x e y.

axis equal

adatta alla stessa lunghezza gli incrementi dei singoli marcatori delle tacche sugli assi x e y. Questo significa

plot(exp(1i*(0:pi/10:2*pi)))

seguito da axis square o axis equal trasforma l'ovale in un cerchio preciso:

axis auto normal

riporta il dimensionamento degli assi alla modalità automatica predefinita.

Impostazione della visibilità degli assi

È possibile utilizzare il comando axis per rendere visibile o invisibile un asse.

axis on

rende l'asse visibile. Si tratta di un'impostazione predefinita.

axis off

rende l'asse invisibile.

Impostazione delle linee della griglia

Il comando grid attiva o disattiva le linee della griglia. La dichiarazione

grid on

attiva le linee della griglia, e

grid off

le riattiva nuovamente.

Aggiunta delle etichette degli assi e di titoli

Questo esempio mostra come creare un grafico e migliorarne la presentazione:

  • Definire i limiti degli assi x e y (axis)

  • Creare un'etichetta per gli assi x e y (xlabel, ylabel)

  • Aggiungere un titolo (title)

  • Aggiungere al grafico una nota testuale (text)

Produrre simboli matematici con la notazione LaTeX.

t = -pi:pi/100:pi;
y = sin(t);
plot(t,y)

axis([-pi pi -1 1])
xlabel('-\pi \leq {\itt} \leq \pi')
ylabel('sin(t)')
title('Graph of the sine function')
text(0.5,-1/3,'{\itNote the odd symmetry.}')

Per informazioni sull'inserimento di frecce, riquadri e cerchi nei grafici vedere la funzione annotation.

Salvataggio delle figure

Per salvare una figura scegliere Save dal menu File. La figura, in questo modo, viene scritta in un file che comprende dati sulle proprietà, i menu, i controlli dell'interfaccia utente e tutte le annotazioni (cioè l'intera finestra). Se la figura non è stata salvata in precedenza, appare la finestra di dialogo Save As. Questa finestra di dialogo contiene opzioni per salvare la figura come file .fig o per esportarla in un formato grafico.

Se la figura è già stata salvata in precedenza, l'uso di Save permette di salvarla di nuovo in modo "silenzioso", cioè senza che la finestra di dialogo Save As sia visualizzata nuovamente.

Per salvare una figura utilizzando un formato grafico standard da utilizzare con altre applicazioni, come TIFF o JPG, selezionare Save As (o Export Setup, per disporre di un controllo addizionale) dal menu File.

Nota

Ogni qualvolta si specifica un formato per salvare una figura, lo stesso formato file viene utilizzato di nuovo la volta successiva in cui si salva la medesima figura o una figura nuova. Per non utilizzare lo stesso formato già utilizzato in precedenza, utilizzare Save As e accertarsi di impostare il menu a discesa Save as type sul tipo di file desiderato.

È inoltre possibile effettuare il salvataggio dalla riga dei comandi:

  • Utilizzare la funzione savefig per salvare una figura e gli oggetti grafici in essa contenuti come file .fig.

  • Utilizzare il comando saveas, incluse eventuali opzioni per salvare la figura in diversi formati.

Caricamento delle figure

È possibile caricare figure in MATLAB utilizzando le seguenti funzioni:

  • Utilizzare la funzione openfig per caricare figure salvate come file .fig.

  • Utilizzare la funzione imread per leggere i file grafici standard, incluse le figure salvate, in MATLAB.

Generazione di codice MATLAB per ricreare una figura

È possibile generare codice MATLAB che crea nuovamente una figura e il grafico in essa contenuta selezionando Generate code dal menu delle figure File. Questa opzione è particolarmente utile se si è sviluppato un grafico con gli strumenti di plottaggio e si desidera creare un grafico simile utilizzando gli stessi dati, o altri dati.

Salvataggio dei dati del workspace

È possibile salvare le variabili nel workspace selezionando Save Workspace As dal menu delle figure File. È possibile ricaricare i dati salvati utilizzando l'elemento Import Data del menu delle figure File. MATLAB supporta numerosi formati file, inclusi i file di dati MATLAB, con estensione .mat.