Lez. 3 I grafici in MatLab

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Lez. 3 I grafici in MatLab"

Transcript

1 Lez. 3 I grafici in MatLab Prof. Giovanni Mettivier 1 Dott. Giovanni Mettivier, PhD Dipartimento Scienze Fisiche Università di Napoli Federico II Compl. Univ. Monte S.Angelo Via Cintia, I-80126, Napoli [email protected]

2 Per default MATLAB traccia grafici sulla finestra 1 Se si vogliono aprire più finestre grafiche occorre digitare il comando figure (n) dove n definisce il numero della finestra La chiusura della finestra n-esima avviene con il comando close (n) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 3 figure : crea una nuova finestra per la figura plot(x) : disegna un linea dei valori in base alla loro posizione nel vettore plot(x,y) : disegna una linea con coordinate x e y plot(x,y,'r--') : disegna una linea specificando lo stile, il colore. Etc. Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 4

3 Se x è un vettore contenente le ascisse dei punti di un fissato insieme di coppie del piano e y è il vettore delle corrispondenti ordinate, plot (x,y) disegna la spezzata congiungente tali punti Esempio >> x = [0:pi/200:2*pi]; >> y = sin(x); >> plot (x,y) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 5 La funzione plot è in grado di tracciare le curve impiegando svariati simboli: Esempio: >> x = [0:0.01: 2*pi]; >> y = sin(x) + cos(2*x); >> plot (x,y, s ) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 6

4 La sintassi di plot nel caso in cui si vogliano utilizzare simboli, colori o tipi diversi di linee è la seguente: Plot ((x,y, stile ) Linea continua Linea tratteggiata Linea punteggiata : Linea tratto punto -. Punto. Più + Cerchio o Stella * Croce x Quadrato s Rosso r Verde g Blu b Bianco w Invisibile i Esempio: >> plot (x,y, b+: ) Traccia una linea blu e punteggiata, con il simbolo + in corrispondenza di ogni valore) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 7 Per creare degli assi cartesiani si usa la funzione axis >> axis ([x-min, x-max, y_min, y_max]) >> axis ( string ) Nella prima forma si impongono i limiti inferiore e superiore degli assi cartesiani Nella seconda forma, string indica l aspetto degli assi; Ad esempio: string = square; per avere i due assi uguale string = normal; per sfruttare tutto lo schermo string = auto; restituisce l asse in scala default, in maniera automatica Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 8

5 La funzione hold conserva il riferimento di assi cartesiani e il corrispondente grafico già esistente; il grafico successivo verrà sovrapposto al precedente. Si usa nella forma >> Hold on >> Hold off Esempio >> x = [0:0.01: 2*pi]; >> y = sin(x) + cos(2*x); >> plot (x,y); >> hold on >> plot (x,y, s ) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 9 E possibille riportare sulla stessa figura più funzioni rappresentate da diverse coppie (x,y) Esempio >> x = [0 : pi/200 : 2*pi]; >> y = sin (x); >> y = sin (x-.40); >> y = sin (x -.8); >> y = sin (x 1.2); >> plot (x,y,x,y2,x,y3,x,y4) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 10

6 Le istruzioni xlabel, ylabel e title etichettano gli assi e la figura. >> plot(glon,glat) >> xlabel('longitude'),ylabel('latitude') >> title('flight Track : CW ') Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 11 La funzione text permette di scrivere una didascalia sul grafico >> text (x,y, testo ) dove x,y sono le coordinate da cui inizierà il testo, sapendo che (0,0) è l angolo in basso a sinistra e (1,1) quello in alto a destra Esempio >> text (x,y, grafico ); Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 12

7 Grafici tridimensionali sono tipicamente tracciati per mezzo delle funzioni plot3, mesh e surf. La plot3 consente di tracciare una curva nello spazio a partire dalle sue equazioni parametriche. Esempio Dalle equazioni parametriche dell elicoide x = sin t y = cost z = t >> t = [0:pi/50:10*pi]; >> plot3 (sin(t), cos(t), t); Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 13 >> plot3(glon,glat,palt,'linewidth',2) >> grid >> xlabel('longitude'),ylabel('latitude') >> zlabel('altitude (m)') Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 14

8 Il comando subplot(m,n,p) divide la finestra corrente in m righe, n colonne e seleziona la finestra p-esima, Ad esempio: >> subplot (2,2,3) Spezza la finestra in quattro sottofinestre e seleziona quella in basso a sinistra (riga 2, colonna 1) Il comando subplot(m,n,p) deve essere, dunque usato prima del plot, per fornire informazioni sulla sottofinestra in cui visualizzare il grafico desiderato Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 15 >> subplot(2,3,1); >> subplot(2,3,4); P=1 P=2 P=3 n P=4 16 Lez 2 - MATLAB - GRAFICI Giovanni Mettivier m

9 contour(z) contour(z,n) : disegna i bordi di una matrice Z : disegna n bordi (n = integer) contour(z,v) : disegna i bordi di un dato valore specificato da un vettore v contour(x,y,z) : disegna i bordi su una griglia specificata da X e Y Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 17 contourf(z) clabel(c,h) : disegna i contorni con un dato colore : aggiunge etichette ai bordi clabel(c,h,v) : aggiunge etichette solo ai bordi specificati nel vettore v clabel(c,h,'manual') : aggiunge etichette ai bordi nelle locazioni specificate dal mouse Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 18

10 >> peaks; Peaks is an example function, useful for demonstrating 3D data, contouring, etc. Figure above is its default output. P=peaks; - return data matrix for replotting Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 19 >> P = peaks; >> contour(p) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 20

11 >> contour(p,[-9:0.5:9]) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 21 >> [C,h]=contour(P); >> clabel(c,h); Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 22

12 >> contourf(p,[-9:0.5:9]); >> colorbar Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 23 Le superfici aono colorate scalando i dati nel range della colormap definita. La colormap si applica a tutta la figura. Esistono molte colormaps predefinite ('jet' (the default), 'warm','cool','copper','bone','hsv'). >> colormap mapname >> colormap('mapname') La corrente colormap può essere conosciuta con >> map=colormap Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 24

13 >> colormap cool Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 25 >> caxis([0 8]) >> colorbar Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 26

14 Le colormap sono semplicemente matrici con 3 colonne di lunghezza arbitraria (default = 64 righe). Ogni riga contiene le componenti [RED GREEN BLUE] del colore richiesto, specificato nella scala 0 1. e.g. >> mymap = [ ] >> colormap(mymap) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 27 Ogni oggetto grafico ha proprietà che possono essere modificate. es. per una linea: colour, width, line style, marker style, stacking order on plot, Molte proprietà possono essere modificate attraverso una finestra. Gli strumenti utilizzabili dipendono dalla versione che si utilizza. Più utili da usare sono i comandi in linea - più veloci, e possono essere inclusi in scripts o funzioni per automatizzare dei processi. Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 28

15 Object select Add/edit text Add arrow & line zoom 3D rotate Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 29 La funzione ginput fornisce i valori dei punti sezionati dal cursore sul grafico >> [x,y] = ginput(n) seleziona n valori >> [x,y] = ginput seleziona valori fino a quando non è premuto il tasto return NB. ginput lavora sugli assi definiti, e ritornerà valori esterni agli assi visibili se sono selezionati punti esterni al frame. Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 30

16 Il comando >> print invia la figura selezionata alla stampante di default. >> print fn stama la fugura numero n sulla stamapante di default Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 31 Una enorme quantità di file format per la stampa sono supportati; la forma generale è: >> print driver options filename e.g. >> print dps filename print postscript file >> print dpsc filename print colour postscript file >> print depsc filename print colour encapsulated postscript file Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 32

17 >> print djpeg filename print JPEG file (a BAD file format for almost any figure) >> print dpng r200 filename print PNG file at 200dpi. L opzione rnnn specifica la risoluzione di stampa (default = option to specify print 150 dpi) Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 33.png.jpg Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 34

18 Le funzioni hgsave e hgload salvano e caricano una figura da un file.fig questo contiene la descrizione grafica della figura, che può essere poi esere modificata in un secondo momento. NB: le variabili usate per creare la figura non sono salvate. >> hgsave(gcf,'filename') >> hgload('filename.fig') Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 35 Le slides seguenti mostrano lo sviluppo di una figura moderatamente complessa dai dati acquisiti: misurazioni di un aereo a bassa quota della metereologia di base mediate su intervalli di 5 km lungo il volo. Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 36

19 >> load /cw96/jun07/jun07_all_5km_means.mat >> who Your variables are: mq mlat mlon msst mtheta mthetav mu mv mws >> plot(mlon,mlat,'o') >> print -dpng -r100 figures/grid-1-data-points Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 37 >> [XX,YY]=meshgrid([-125.2:0.05:-124],[39.9:0.05:40.8]); >> gmws=griddata(mlon,mlat,mws,xx,yy); >> pcolor(xx,yy,gmws); shading flat; >> hbar=colorbar; >> hold on >> h1=plot(mlon,mlat,'ko'); >> print -dpng -r100 figures/grid-2-wind-field Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 38

20 >> gu=griddata(mlon,mlat,mu,xx,yy); >> gv=griddata(mlon,mlat,mv,xx,yy); >> quiver(xx,yy,gu,gv,'k-'); >> set(h1,'markeredgecolor','r','markersize',5) >> print -dpng -r100 figures/grid-3-wind-field-and-vectors Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 39 >> set(gca,'linewidth',2,'fontweight','bold') >> xlabel('longitude'); ylabel('latitude') >> set(hbar,'linewidth',2,'fontweight','bold') >> set(get(hbar,'xlabel'),'string','(m s^{-1})','fontweight','bold') >> xlabel('longitude'); ylabel('latitude') >> title('cw96 : June 07 : 30m wind field') >> load mendocinopatch.mat >> patch(mendocinopatch(:,1),mendocinopatch(:,2),[ ]) >> print -dpng -r100 figures/grid-4-wind-field-and-vectors-and-coast Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 40

21 % generate movie frames from LEM fields [XX,ZZ]=meshgrid(X,Z(iz)); [YY,ZZ]=meshgrid(Y*0,Z(iz)); ZH=ones([ ])*Z(3); for n=4:33 data1=q012d_k3{n}; data2=q012d_i50{n}(iz,:); surf(x,y,zh,data1);shading flat; set(gca,'xticklabel',{},'yticklabel',{},'zticklabel',{}); set(gca,'xlim',[min(x) max(x)],'ylim',[min(y) max(y)]) hold on surf(xx,yy,zz,data2);shading flat; set(gca,'zlim',[0 max(z(iz))]) Qframes(n-3)=getframe; % NB first n=4, force frames index to hold off % start at 1 to avoid empty frames End % play movie in matlab axis([ ]) set(gca,'visible','off') movie(qframes,5) % save movie to AVI file movie2avi(qframes,'testavi.avi','compression','none') Lez 2 - MATLAB - GRAFICI Giovanni Mettivier 41

INTRODUZIONE A MATLAB

INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB Descrizione Ambiente/Linguaggioper risolvere problemi di calcolo numericomatrix LABoratory; Marchio registrato da MathWorks Inc. (U.S.A.) Puo essere ampliato da pacchetti specifici

Dettagli

UD6 - MATLAB. Gestione della grafica

UD6 - MATLAB. Gestione della grafica UD6 - MATLAB Gestione della grafica Grafici MatLab può produrre grafici 2D e 3D Disegnare un Grafico Il comando plot produce grafici in 2 dimensioni; plot(x,y)apre una finestra e disegna il punto (x,y);

Dettagli

MATLAB (3) - Grafica 2 e 3D

MATLAB (3) - Grafica 2 e 3D Laboratorio di Informatica per Ingegneria elettrica A.A. 21/211 Prof. Sergio Scippacercola MATLAB (3) - Grafica 2 e 3D N.B. le slide devono essere utilizzate solo come riferimento agli argomenti trattati

Dettagli

Rappresentazione di curve in tre dimensioni

Rappresentazione di curve in tre dimensioni Rappresentazione di curve in tre dimensioni Il comando plot3, con la sintassi >>plot3(x,y,z) Analoga al semplice plot, permette di tracciare nello spazio curve i cui punti hanno coordinate rispettivamente

Dettagli

Introduzione a Matlab

Introduzione a Matlab Grafici plot(y) disegna i valori di Y rispetto agli indici plot(x, Y) disegna i valori di Y rispetto a X plot(x,y,s) disegna Y rispetto a X con alcune configurazioni contenute nella stringa S: colore:

Dettagli

Grafici in matlab. Un esempio di grafico: xv = 3:0.1:3; yv = xv.^3 5*xv.^2 + 4; plot(xv,yv) xlabel('value of x') ylabel('value of y')

Grafici in matlab. Un esempio di grafico: xv = 3:0.1:3; yv = xv.^3 5*xv.^2 + 4; plot(xv,yv) xlabel('value of x') ylabel('value of y') Grafici in matlab Un esempio di grafico: Matlab ha un sacco di funzioni per le rappresentazioni grafiche! Oggi ne vediamo alcune. Per ulteriori informazioni: help graph2d help graph3d Notazione con l operatore

Dettagli

Grafici. Un programma grafico inizia con un comando che chiude una eventuale finestra grafica precedente: close

Grafici. Un programma grafico inizia con un comando che chiude una eventuale finestra grafica precedente: close Grafici MATLAB permette di creare in modo semplice grafici bi- e tri-dimensionali e di corredare tali grafici con una serie di annotazioni utili a renderli chiari ed esplicativi. Un programma grafico inizia

Dettagli

Finestre grafiche. >> figure >> figure(n)

Finestre grafiche. >> figure >> figure(n) Finestre grafiche MATLAB ha anche la possibilità di lavorare con delle finestre grafiche sulle quali si possono fare disegni bidimensionali o tridimensionali. Una finestra grafica viene aperta con il comando

Dettagli

Introduzione al MATLAB c Parte 2 Funzioni

Introduzione al MATLAB c Parte 2 Funzioni Introduzione al MATLAB c Parte 2 Funzioni Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Funzioni matematiche Assegnazione di funzioni 2 Grafico di funzione in

Dettagli

MATLAB - Programmazione - 2. Antonino Polimeno

MATLAB - Programmazione - 2. Antonino Polimeno MATLAB - Programmazione - 2 Antonino Polimeno [email protected] Manipolazione di matrici - 1 Input di matrici Definizione manuale: A = [1, 2, 3; 7, 8, 9] Generazione da funzioni Lettura da file

Dettagli

ESERCITAZIONE MATLAB

ESERCITAZIONE MATLAB ESERCITAZIONE MATLAB Di seguito sono ripostati alcuni esercizi da eseguire in ambiente MatLab. Gli esercizi sono divisi per argomenti. Ogni esercizio è preceduto da una serie di esempi che aiutano nello

Dettagli

Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017

Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017 Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017 Palermo 24-28 Luglio 2017 www.u4learn.it Arianna Pipitone Funzioni grafiche di MATLAB I grafici aiutano ad interpretare grandi quantità di dati in modo

Dettagli

FON DAMEN TI DI IN FORMATICA

FON DAMEN TI DI IN FORMATICA Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Meccanica & Ingegneria Gestionale Mat. Pari Docente : Ing. Secondulfo Giovanni Anno Accademico 29-21 UNITÀ IV A GRAFICA

Dettagli

Calcolo Numerico I - a.a Laboratorio 3 - Introduzione a MATLAB

Calcolo Numerico I - a.a Laboratorio 3 - Introduzione a MATLAB Calcolo Numerico I - a.a. 2010-2011 Laboratorio 3 - Introduzione a MATLAB Grafica 2D in Matlab Per tracciare in Matlab il grafico di una funzione y = f(x) per un intervallo assegnato di valori della variabile

Dettagli

Uso avanzato di MATLAB

Uso avanzato di MATLAB Uso avanzato di MATLAB Miscione Giuseppe [email protected] Indice Funzioni matematiche Funzioni di arrotondamento Disegnare funzioni Creare script Controllo del flusso di esecuzione 1 Funzioni matematiche

Dettagli

MANUALE MATLAB. Nel manuale proposto ci soffermeremo ad osservare alcune funzioni proposte da Matlab inerenti all attività di laboratorio.

MANUALE MATLAB. Nel manuale proposto ci soffermeremo ad osservare alcune funzioni proposte da Matlab inerenti all attività di laboratorio. MANUALE MATLAB Nel manuale proposto ci soffermeremo ad osservare alcune funzioni proposte da Matlab inerenti all attività di laboratorio. LOAD: La funzione load serve per caricare dei dati presenti in

Dettagli

L INTERFACCIA GRAFICA DI EXCEL

L INTERFACCIA GRAFICA DI EXCEL Dopo l avvio del foglio elettronico apparirà un interfaccia grafica nella quale verrà aperta una nuova cartella di lavoro alla quale il PC assegnerà automaticamente il nome provvisorio di Cartel1. La cartella

Dettagli

Grafici in MATLAB Uso del comando plot() Appunti per l insegnamento di Metodi computazionali per la finanza Anno Accademico 2015/2016

Grafici in MATLAB Uso del comando plot() Appunti per l insegnamento di Metodi computazionali per la finanza Anno Accademico 2015/2016 Grafici in MATLAB Uso del comando plot() -------------------------------------------------------------- Appunti per l insegnamento di Metodi computazionali per la finanza Anno Accademico 2015/2016 Riccardo

Dettagli

Matlab: Variabili e Array. Informatica B

Matlab: Variabili e Array. Informatica B Matlab: Variabili e Array Informatica B Array e variabili L unità fondamentale di dati in MATLAB è l array Una variabile in MATLAB è una regione di memoria che contiene un array Ha un nome definito dall

Dettagli

Introduzione a Matlab

Introduzione a Matlab INFORMATICA B Ingegneria Elettrica Introduzione a Matlab Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell

Dettagli

MATLAB Elementi di grafica Costrutti di programmazione

MATLAB Elementi di grafica Costrutti di programmazione MATLAB Elementi di grafica Costrutti di programmazione Operazioni punto Le operazioni punto agiscono su array che abbiano le stesse dimensioni:.* prodotto elemento per elemento./ divisione elemento per

Dettagli

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro; EXCEL Modulo 3 I Grafici Grafici Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro; Quando si crea un grafico ogni

Dettagli

Figura 1 - Finestra Tabella

Figura 1 - Finestra Tabella Capitolo IV Oggetti Creare una tabella Creare una tabella per inserire dei dati Per inserire una tabella premere il pulsante Tabella presente nella sezione Tabella della barra Inserisci. Viene visualizzata

Dettagli

Lezione PSPICE n.2. Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

Lezione PSPICE n.2. Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici Lezione PSPICE n.2 Dr. Carlo Petrarca Dipartimento di Ingegneria Elettrica Università di Napoli

Dettagli

Printer Driver. Questa guida descrive la configurazione del driver stampante per Windows 7, Windows Vista, Windows XP e Windows 2000.

Printer Driver. Questa guida descrive la configurazione del driver stampante per Windows 7, Windows Vista, Windows XP e Windows 2000. 4-129-746-42 (1) Printer Driver Guida per la configurazione Questa guida descrive la configurazione del driver stampante per Windows 7, Windows Vista, Windows XP e Windows 2000. Prima dell utilizzo del

Dettagli

Grafici e Pagina web

Grafici e Pagina web Grafici e Pagina web Grafici Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro. Quando si crea un grafico ogni riga

Dettagli

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato. Scilab Corso di Informatica CdL: Chimica Introduzione a Scilab - Vettori Claudia d'amato [email protected] Scilab Introduzione Ambiente matematico e di simulazione numerica sviluppato per la realizzazione

Dettagli

Laboratorio di Matematica Computazionale A.A Lab. 8

Laboratorio di Matematica Computazionale A.A Lab. 8 Laboratorio di Matematica Computazionale A.A. 2008-2009 1 Grafica 3D 1.1 plot3 linee in 3D Lab. 8 Grafica 3D e interpolazione di Lagrange Il comando plot3(x,y,z) traccia linee in 3D usando una sintassi

Dettagli