Introduzione a Matlab Ing. Gianfranco Miele ([email protected]) www.docente.unicas.it/gianfranco_miele October 24, 2012
Introduzione a Matlab
Ing. Gianfranco Miele ([email protected])
www.docente.unicas.it/gianfranco_miele
October 24, 2012
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
24/10/2012 Introduzione a Matlab
MAT(rix) LAB(oratory)
Originariamente MATLAB è stato sviluppato come ambiente interattivo, di facile uso, per il calcolo matriciale tecnico e scientifico ad alto livello.
Nel tempo MATLAB è stato completato con l’aggiunta di funzioni che permettono complesse simulazioni ed analisi numeriche, e l’interfacciamento con prototipi.
Attualmente MATLAB è utilizzato anche come:
1.calcolatrice elettronica evoluta;
2.ambiente grafico bi- e tri-dimensionale;
3.linguaggio di programmazione.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Introduzione
24/10/2012 Introduzione a Matlab
L'elemento di base in MATLAB è l’array: dato
di tipo matriciale (scalare, vettore, matrice a due
o più dimensioni)
È noto che le operazioni eseguite sulle matrici si
applicano anche agli scalari ed ai vettori dal momento
che anche uno scalare si può vedere come una
particolare matrice di dimensioni 1×1 e che un vettore è
una particolare matrice di dimensioni n×1 (se è un
vettore-colonna) o 1×n (se è un vettore-riga).
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Toolbox
24/10/2012 Introduzione a Matlab
MATLAB e’ integrato da una famiglia di soluzioni
application-specific denominate toolbox.
I toolbox sono collezioni complete di funzioni
MATLAB (M-file: file con estensione .m) che
estendono le funzionalità dell'ambiente di base
per risolvere particolari categorie di problemi.
Per verificare i toolbox installati, e la loro
versione si può digitare ver alla riga di comando
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Comandi di avvio
24/10/2012 Introduzione a Matlab
•La linea di comando di MATLAB è indicata dal
simbolo >>, che è il prompt dal quale possono
essere richiamati tutti i comandi da eseguire in
maniera interattiva.
•I comandi possono essere dati da tastiera o letti
da un file. Il comando viene interpretato nel
momento in cui viene premuto l’Invio.
•Per terminare la sessione di lavoro basta
digitare il comando exit oppure quit
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Desktop Layout
24/10/2012 Introduzione a Matlab
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Le variabili
24/10/2012 Introduzione a Matlab
•In MATLAB non è necessario dichiarare il tipo e la dimensione delle variabili.
•I nomi delle variabili possono essere costituiti da lettere e cifre. Il primo carattere deve essere una lettera.
•I nomi delle variabili possono essere lunghi al massimo 63 caratteri. Nel caso siano più lunghi essi vengono automaticamente troncati.
•MATLAB distingue tra maiuscole e minuscole (case sensitive). Questa caratteristica non è presente nella maggior parte dei linguaggi di programmazione.
Es. si può utilizzare la variabile t per indicare un istante di tempo e T per indicare un periodo di tempo: molto comodo.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
24/10/2012 Introduzione a Matlab
Le variabili
Alcune variabili sono predefinite, ad esempio •pi (3.141592…..)
•i, j (unità immaginaria )
•eps (precisione di macchina)
•realmax (massimo numero di macchina positivo)
•realmin (minimo numero di macchina positivo)
•Inf (Infinito: numero maggiore di realmax)
•NaN (Not a Number: risultato di operazioni non definite, tipicamente di 0/0)
Fatta eccezione per le variabili i e j, usate talvolta come indici interi, conviene non modificare il valore di queste variabili.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Comandi per la gestione delle
variabili
24/10/2012 Introduzione a Matlab
•save
salva il contenuto dello spazio di lavoro (tutte le variabili ed i loro valori) in un archivio
chiamato automaticamente matlab.mat.
•save nome_archivio
salva il contenuto dello spazio di lavoro in un archivio di nome nome_archivio.mat.
•save nome_archivio var1 var2
salva le variabili var1 e var2 ed i loro valori in un archivio di nome nome_archivio.mat.
•load
carica nello spazio di lavoro tutte le variabili precedentemente salvate nell’archivio
matlab.mat.
•load nome_archivio
carica nello spazio di lavoro le variabili dell’archivio nome_archivio.mat.
•load nome_archivio var1
carica nello spazio di lavoro la variabile var1 dell’archivio nome_archivio.mat.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Immissione di matrici
24/10/2012 Introduzione a Matlab
Si possono definire matrici in diversi modi
1. introducendo un elenco esplicito di elementi
2. utilizzando le funzioni generatrici messe a
disposizione da MATLAB
3. caricando matrici da file di dati esterni
4. sviluppando proprie funzioni generatrici
(create dall’utente in file esterni)
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
24/10/2012 Introduzione a Matlab
Immissione di vettori
Se si vuole creare un vettore con un numero prefissato di punti equispaziati all’interno di un intervallo si può usare la funzione generatrice linspace(inizio,fine,numero di punti)
•inizio e fine sono gli estremi dell’intervallo
•numero di punti è uguale a 100 se è omesso.
Esempio: >>a=linspace(1,5,5)
a =
1 2 3 4 5
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
24/10/2012 Introduzione a Matlab
Immissione di matrici
Nel caso in cui l’espressione digitata contenga un numero troppo grande di caratteri per restare su di un’unica riga di comando è possibile utilizzare un carattere di continuazione dato da tre punti consecutivi …
Es.1
>> A = [16 3 ...
2 13; 5 10 11 ...
Es.2
>> 1 + 1/4 + ...
1/8
ans = 1.375
Terminato l’inserimento di una matrice, essa è registrata automaticamente nel workspace di MATLAB.
In seguito si potrà indicarla semplicemente con il suo nome (Es. A), e su di essa sarà possibile effettuare operazioni di somma, trasposizione, inversione, etc .
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Trasposizione
24/10/2012 Introduzione a Matlab
L' operazione di trasposizione è denotata da un simbolo di apostrofo, ‘
Ad esempio, se
A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
se si digita A‘ alla riga di comando, si determina il seguente risultato:
ans =
16 5 9 4
3 10 6 15
2 11 7 14
13 8 12 1
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Funzione size()
24/10/2012 Introduzione a Matlab
Il comando size() fornisce la dimensione di una matrice:
>> vet = [1 2 3 4];
>> size(vet)
ans =
1 4
È possibile memorizzare in un vettore il risultato restituito dalla funzione size():
>> [n,m] = size (b)
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Accesso agli elementi di una matrice
24/10/2012 Introduzione a Matlab
L'elemento in riga i e colonna j di A è denotato con A(i,j).
Es:
A(4,2)
indica l’elemento di valore 15
È anche possibile richiamare gli elementi di una matrice utilizzando un singolo indice, A(k).
Questo metodo è naturale quando si considerino vettori riga e vettori colonna, ma si può anche applicare a matrici bidimensionali. In questo caso la matrice è considerata come un vettore colonna, formato dalle colonne della matrice originale disposte secondo un ordine progressivo.
Es:
A(4,2) e A(8) indicano il medesimo elemento
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
24/10/2012 Introduzione a Matlab
Accesso agli elementi di una matrice
Se si tenta di usare il valore di un elemento della matrice al di fuori di essa, si commette un errore:
t = A(4,5)
Index exceeds matrix dimensions
D'altra parte, se si immagazzina un nuovo valore in un elemento della matrice, c'è un aumento dell'ordine per accomodare il nuovo elemento:
X = A;
X(4,5) = 17
X =
16 3 2 13 0
5 10 11 8 0
9 6 7 12 0
4 15 14 1 17
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
L’operatore :
24/10/2012 Introduzione a Matlab
L’operatore due punti,:, è uno dei più importanti
operatori di MATLAB.
Si trova in molte forme diverse come sostituto di
un ciclo for .
Può essere utilizzato con la seguente sintassi:
NOMEVETTORE = VALOREINIZIALE : INCREMENTO : VALOREFINALE
NOMEVETTORE = (VALOREINIZIALE : INCREMENTO : VALOREFINALE)
NOMEVETTORE = [VALOREINIZIALE : INCREMENTO :VALOREFINALE]
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
24/10/2012 Introduzione a Matlab
L’operatore :
L’operatore due punti può essere utilizzato per
assegnare o richiamare porzioni di una matrice.
Ad esempio
A(1:k,j)
richiama i primi k elementi della colonna j di A,
mentre:
sum(A(1:4,4))
calcola la somma dei primi quattro elementi della
quarta colonna.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Funzioni generatrici di matrici particolari
24/10/2012 Introduzione a Matlab
MATLAB permette di creare direttamente alcuni particolari tipi di matrici
eye
genera la matrice identità (quadrata) di ordine assegnato
>> eye(4)
zeros
genera una matrice con tutti elementi uguali a zero
>> zeros(4,2)
ones
genera una matrice con tutti elementi uguali a 1
>> ones(2,3)
rand
genera una matrice di numeri casuali tra 0 e 1
>> rand(3,4)
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Operazioni aritmetiche
24/10/2012 Introduzione a Matlab
Le operazioni aritmetiche basilari definite in MATLAB sono le seguenti :
1. addizione +
2. sottrazione –
3. moltiplicazione *
4. divisione /
5. elevamento a potenza ^
Tali operazioni sono definite per le matrici e, di conseguenza, anche per i vettori e gli scalari
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Operazioni sui singoli elementi
delle matrici: operatori .*, ./, .^
24/10/2012 Introduzione a Matlab
Le operazioni aritmetiche * / ^ precedute dal carattere punto . Agiscono elemento per elemento. Queste operazioni non hanno analogo nel calcolo matriciale, ma sono molto utili.
» A = [ 1 2 ; 3 4];
» B = [ 1 2 ; -1 1];
» C = A ./ B
C =
1 1
-3 4
» C = A.*B
C =
1 4
-3 4
» C = A.^ B
C =
1.0000 4.0000
0.3333 4.0000
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Esempio operatore .*
24/10/2012 Introduzione a Matlab
A.*A
ans =
256 9 4 169
25 100 121 64
81 36 49 144
16 225 196 1
N.B. A .* A A * A = A ^ 2
Per poter eseguire questo tipo di operazioni (.*, ./, .^) gli operandi devono avere le stesse dimensioni.
L’unica eccezione a questa regola è data dal caso in cui uno dei due operandi è uno scalare. In questo caso è infatti possibile eseguire una qualunque operazione, puntuale e non, in quanto lo scalare viene trattato come una variabile dello stesso tipo e delle stesse dimensioni dell’altro operando, avente tutte le componenti costanti.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Concatenazione
24/10/2012 Introduzione a Matlab
Per concatenazione si intende il processo di congiunzione di matrici per fare matrici di dimensioni più grandi.
La parentesi quadrata, [ ], è l'operatore della concatenazione.
Per un esempio, si parta dalla matrice 4x4 A e si formi:
B = [A A+32; A+48 A+16]
Il risultato è una matrice 8x8, ottenuta concatenando quattro sottomatrici 4x4.
B =
16 3 2 13 48 35 34 45
5 10 11 8 37 42 43 40
9 6 7 12 41 38 39 44
4 15 14 1 36 47 46 33
64 51 50 61 32 19 18 29
53 58 59 56 21 26 27 24
57 54 55 60 25 22 23 28
52 63 62 49 20 31 30 17
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Cancellazione di righe o colonne
24/10/2012 Introduzione a Matlab
Si possono cancellare righe e colonne da una matrice utilizzando le parentesi quadrate.
Ad esempio,sia:
X = A;
Per cancellare la seconda colonna di X, usiamo:
X(:,2) = [ ]
Questo cambia X in
X =
16 2 13
5 11 8
9 7 12
4 14 1
N.B. Se si cancella un singolo elemento da una matrice, il risultato non è più una matrice. Così,
X(1,2) = [ ]
produce un errore.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Ulteriori operazioni con matrici
24/10/2012 Introduzione a Matlab
Se A è una matrice
>> max(A)
restituisce un vettore riga che contiene l’elemento massimo di ogni colonna
>> min(A)
restituisce un vettore riga che contiene l’elemento minimo di ogni colonna
>> eig(A)
restituisce una matrice diagonale che contiene gli autovalori di A ed una matrice le cui colonne sono gli autovettori corrispondenti
>> abs(A)
restituisce una matrice i cui elementi sono gli elementi di A presi in valore assoluto
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Soluzione di un sistema algebrico:
operatore \
24/10/2012 Introduzione a Matlab
Dato un sistema algebrico posto nella forma [A] * {x} = {b}, la soluzione {x} può essere ricavata utilizzando l’operatore \ (backslash): x = A \ b
L’uso di tale operatore equivale a scrivere x = inv(A) * b
Es.
A=[2 5 6;6 4 -12;1 0 4]
b=[32;6;1]
>> x=A\b
x =
-1.7907
6.2791
0.6977
2 5 6 32
6 4 12 6
4 1
x y z
x y z
x z
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Generazione di matrici mediante il
comando load
24/10/2012 Introduzione a Matlab
Si è mostrato che il comando load consente di legge file binari (.mat) che contengono variabili (e quindi anche matrici) generate in precedenti sessioni di MATLAB.
Tale comando può anche essere utilizzato per leggere file di testo contenenti dati numerici.
I file di testo dovrebbero essere organizzati come una tabella rettangolare di numeri, separata da spazi vuoti, con una riga per linea, e un numero uguale di elementi in ciascuna fila.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Uso di Matlab come linguaggio di
programmazione
24/10/2012 Introduzione a Matlab
Alcune strutture elementari di programmazione disponibili in MATLAB sono:
•ciclo incondizionato for controllato da un contatore
•ciclo condizionato while
•uscita incondizionata break
•istruzioni condizionali if e switch
•operatori relazionali
•operatori logici
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Operatori relazionali
24/10/2012 Introduzione a Matlab
< <= > >= == ˜=
N.B. in MATLAB gli operatori relazionali possono essere applicati anche a vettori e matrici.
Esempio:
>>x=1:5;
>>y=5:-1:1;
>>z=x>y
z =
0 0 0 1 1
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Istruzioni condizionali: if
24/10/2012 Introduzione a Matlab
if condizione1
istruzioni
elseif condizione2
istruzioni
....
else
istruzioni
end
Il primo blocco di istruzioni sarà eseguito solo se la condizione1 risulta essere verificata, il secondo solo se la condizione1 risulta essere falsa e la condizione2 vera.
Il blocco che segue else sarà eseguito soltanto se nessuna delle precedenti condizioni risulta essere vera.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Istruzioni condizionali: switch
24/10/2012 Introduzione a Matlab
switch variabile
case valore1
istruzioni
case {valore2, valore3,...}
istruzioni
otherwise,
istruzioni
end
Se variabile è uguale a valore1 vengono eseguite le righe di codice poste dopo la prima istruzione case.
Se variabile è uguale a valore2 o valore3 o ... vengono eseguite le righe di codice poste dopo la seconda istruzione case.
In tutti gli altri casi vengono eseguite le istruzioni dopo otherwise
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Ciclo for
24/10/2012 Introduzione a Matlab
for variable = inizio:incremento:fine,
istruzione
...
istruzione
end
Il ciclo viene ripetuto per tutti i valori di variabile compresi tra inizio e fine. Al termine di ogni ciclo il valore di variabile viene incrementato di incremento.
Se il valore di incremento viene omesso esso vieneautomaticamente assunto uguale a +1.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Ciclo condizionato while
24/10/2012 Introduzione a Matlab
while condizione
istruzione
...
istruzione
end
condizione è un’espressione che MATLAB valuta numericamente e che viene interpretata come vera se assume valore 1, come falsa se assume valore 0.
Il ciclo viene eseguito fintanto che l’espressione è vera.
Se si utilizza l’operatore logico ˜ davanti a condizione, il ciclo viene eseguito fintanto che l’espressione è falsa.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Uscita incondizionata break
24/10/2012 Introduzione a Matlab
Il comando break consente di uscire in maniera
forzata da un ciclo for o while.
Quando tale comando viene eseguito MATLAB
salta direttamente all’istruzione end, con cui
termina il ciclo.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
m-file (script) e funzioni
24/10/2012 Introduzione a Matlab
Esistono due categorie di programmi eseguibili in MATLAB:
m-file (o script) file di comandi
function-file file di funzioni
Entrambi questi programmi devono essere salvati in file con estensione “.m”.
Per inserire dei commenti all'interno dei programmi viene utilizzato il carattere %. I commenti posti all’inizio di un file con estensione .m possono essere mostrati digitando il comando help seguito dal nome del programma.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
m-file (script)
24/10/2012 Introduzione a Matlab
Un m-file contiene una successione di comandi MATLAB memorizzati in un file di testo.
Esso è caratterizzato da un nome con estensione .m (es. nomefile.m) che lo identifica come un nuovo comando MATLAB.
Pertanto, per eseguire il programma è sufficiente digitare il suo nome alla riga di comando di MATLAB:
>> nomefile
Con questa operazione si ottiene lo stesso risultato che si sarebbe ottenuto scrivendo uno ad uno i comandi elencati nello script.
Le variabili definite in uno script sono variabili globali e quindi contribuiscono ad aumentare l’occupazione di memoria: rimangono in workspace anche le variabili di servizio, di cui è superfluo conservare i valori.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
function file
24/10/2012 Introduzione a Matlab
Se si vogliono evitare gli inconvenienti di allocazione di memoria dati dagli m-file, e se si vuole suddividere un programma in più sotto-programmi è conveniente considerare i function-file (o “function”).
Un function-file è caratterizzato da una lista di parametri di input (opzionale) ed una lista di parametri di output (anch’essa opzionale).
A differenza dello script, la prima riga di una function deve avere obbligatoriamente la seguente struttura:
function [y1, ... , yn] = nome_funzione (x1, ... , xm)
Il file deve essere salvato con un nome uguale a quello della funzione (nome_funzione) e con estensione .m.
N.B. Le variabili utilizzate durante l’esecuzione del programma vengono
trattate come variabili locali e vengono automaticamente cancellate dalla
memoria al termine dell’esecuzione.
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
Grafici: funzione plot()
24/10/2012 Introduzione a Matlab
La funzione plot() consente di produrre grafici bidimensionali.
Essa genera risultati che dipendendo dal numero di argomenti utilizzati.
Se y è un vettore, plot(y) produce un grafico lineare degli elementi di y rispetto all'indice degli elementi di y. Tutti i punti rappresentati vengono raccordati tra loro mediante tratti rettilinei: si ottiene pertanto una rappresentazione grafica di y mediante una spezzata.
Se si specificano due vettori come argomenti, ad esempio x e y, plot(x,y) produce un grafico di y (ordinate) contro x (ascisse).
Corso di Laurea Magistrale in Ingegneria delle Telecomunicazioni
Misure elettroniche per le telecomunicazioni
Università degli Studi di
Cassino e del Lazio
Meridionale
figure(), close(), close all
24/10/2012 Introduzione a Matlab
L’invocazione della funzione plot() comporta l’apertura automatica di una nuova finestra grafica qualora non ve ne siano già di aperte.
Se una finestra grafica risulta essere già aperta, il comando plot() viene applicato a tale finestra. Ciò comporta che venga sovrascritto il contenuto di tale finestra.
Per aprire una finestra nuova, nominarla finestra “n” (dove n è il numero nella barra del titolo della figura) e renderla finestra corrente è sufficiente digitare:
figure(n)
Tale istruzione può essere anche applicata ad una finestra grafica già aperta, per renderla finestra corrente.
Per chiudere la suddetta finestra si digita il comando close(n), per chiudere tutte le finestre attive si digita close all.