MATLAB
Funzioni grafiche
Salvataggio/recupero dati da
file
MATLAB - grafica 2
Salvataggio e recupero dati
save <nomefile> <lista variabili>
salva nel file nomefile.mat le variabili elencate in lista variabili
load <nomefile>
carica nel workspace le variabili contenute nel file nomefile.mat
MATLAB - grafica 3
Salvataggio e recupero dati
a=[1 2 3;4 5 6;7 8 9]; b=15;
vet=[2 4 6 8 10];
save mieidati a vet;
salva nel file mieidati.mat le variabili elencate in lista variabili
clear; cancella il workspace load mieidati;
carica nel workspace le variabili contenute nel file nomefile.mat, cioè a e vet
MATLAB - grafica 4
Funzioni grafiche: plot
plot(lista_argomenti)
genera un grafico bidimensionale (x-y) di cui possono essere specificate numerose
caratteristiche.
plot(y)
genera il grafico della sequenza di valori contenuto nel vettore y. I valori delle ascisse sono gli indici del vettore. Gli estremi entro cui variano ordinate e
ascisse sono automaticamente fissati.
MATLAB - grafica 5
Funzioni grafiche: plot
plot(x,y)
genera il grafico della sequenza di valori contenuto nel vettore y. I valori delle ascisse sono i valori
specificati in x. Gli estremi entro cui variano ordinate e ascisse sono automaticamente fissati.
x e y devono avere la stessa lunghezza
plot(x,y,'*')
genera lo stesso grafico ma stampando singoli punti a forma di *
MATLAB - grafica 6
Funzioni grafiche: grafici multipli
plot(x,y,'*',x,z,'-')
stampa due grafici sovrapposti, con i valori di y e di z rispetto a x, utilizzando asterischi per y e una
linea per z
Equivale a
plot(x,y,'*')
hold on; i prossimi plot si sovrapporranno al grafico appena fatto
plot(x,z,'-')
MATLAB - grafica 7
Funzioni grafiche: titoli
xlabel('x')
ylabel('sin(x)')
title ('Funzione seno')
Usa le stringhe specificate rispettivamente come etichette per l'asse x e y, e come titolo.
plot(x, sin(x))
Stampa per ogni elemento del vettore x, il corrispondente valore sin(x).
MATLAB - grafica 8
Funzioni grafiche: scalatura degli assi
axis([xmin, xmax, ymin, ymax],'style') Fissa i valori minimi e massimi per gli assi x e y:
possono essere specificati fino a 6 valori (per x,y e z)
>>> axis('auto') scalatura automatica
>>> axis ([-pi,pi,-1.2,1.2], 'square')
il grafico appare quadrato
>>> axis ([-pi,pi,-1.2,1.2], 'equal')
stessa scala per i due assi
>>> axis ([-pi,pi,-1.2,1.2], 'normal')
ristabilisce le proporzioni
subplot(m,n,k) o subplot(mnk)
Suddivide lo schermo in una matrice di m x n grafici e seleziona il grafico k-mo.
Il primo grafico si trova in alto a sinistra, poi si procede per colonne
Es. se m=3 n=2 il valore di k corrisponde ai seguenti riquadri
subplot(325) 1
2 3
4 6
MATLAB - grafica 9
Funzioni grafiche: grafici multipli
5
MATLAB - grafica 10
Funzione plot: esempi
y=sin(0:pi/100:2*pi);
plot(y)
x =0:pi/100:2*pi;
y =sin(x);
plot(x,y)
MATLAB - grafica 11
Funzione plot: esempi
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y,'*')
MATLAB - grafica 12
Funzione plot: esempi
X = 0:pi/100:2*pi;
y = sin(x); z = cos(x);
plot(x,y,'*',x,z,'-')
MATLAB - grafica 13
Funzione plot: esempi
x=0:pi/100:2*pi; y=sin(x); plot(x,y);
xlabel('x'); ylabel('y'); title('y(x)=sin(x)')
MATLAB - grafica 14
Funzione plot: esempi
Formato ideale per gli istogrammi
bar(1:10,[2,3,4,8,5,1,0,7,4,2])
MATLAB - grafica 15
Funzione bar: grafici a barre
for i=1:100;for j=1:100;
a(i,j)=sin(((i-50)/50)^2+((j-50)/50)^2);
end;end;
mesh(1:100,1:100,a);
MATLAB - grafica 16
Funzione mesh: grafici 3D
MATLAB - grafica 17
Esercizi
1. Scrivere un programma che chieda di inserire da
tastiera in un vettore i ricavi di un negozio nei 12 mesi del 2011 e che poi generi il grafico relativo, con le
opportune etichette. Generare prima un grafico normale poi un grafico a barre.
2. Scrivere una funzione che riceve in ingresso un vettore che contiene i dati dell’esercizio precedente e genera un grafico in cui ogni punto rappresenta la spesa sostenuta dall’inizio dell’anno fino al mese rappresentato dal punto (il 1° rappresenta la spesa di gennaio, il 2° quella di gennaio e febbraio, il terzo quella di gennaio, febbraio e marzo ecc.)
MATLAB - grafica 18
Esercizi
1. Caricare i dati sulla piovosità contenuti nel file piodata.mat che contiene le seguenti matrici:
pioanni (1x98) I 98 anni (dal 1917 al 2014) in cui sono stati fatti i rilevamenti
piostazioni (1x15 stringhe) I nomi delle stazioni meteo piodati (12x98x15) I dati per ogni mese, anno e stazione
Quindi piodati(3,5,7) rappresenta la piovosità di marzo (terzo mese) dell’anno memorizzato in pioanni(5) per la stazione il cui nome è memorizzato in piostazioni(7).
Fare un grafico a barre relativo alla piovosità del 1945 rilevata dalla stazione 12 (indicare nel titolo il nome della stazione).