You are on page 1of 11
Lucrarea 4 — Reprezentari grafice Lucrarea 4 Reprezentari grafice Obiectivul lucrarii Obiectivul principal al acestei lucrarii este de a oferi o prezentare a facilitatilor din cadrul Matlab-ului pentru reprezentarea grafica bidimensionala si tridimensionalai. Astfel, in continuare vom incerca s& abordam urmatoarele aspecte: Reprezentari grafice 2D Reprezentarea grafica in coordonate logaritmice Functii specializate 2D Reprezentari grafice 3D Export / import de grafice BRONS Aspecte teoretice si mersul lucrai Reprezentarea graficd este o modalitate de prezentare a datelor stiintifice sub forma unei imagini sau a unui grafic. Matlab dispune de 0 varietate de functii si tehnici, ce permit reprezentarea grafica bidimensionala (2D) respectiv tridimensionala (3D) a datelor. Graficele in Matlab sunt afigate intr-o fereastra Figure. Functia de baza folosita in Matlab pentru reprezentari grafice este plot. Flexibilitatea si usurinta utilizarii instrumentelor de reprezentare grafica este unul din punctele forte ale Matlab-ului. Prin urmare, acesta are foarte multe comenzi care pot fifolosite pentru a crea reprezentari 2D de baz, reprezentari suprapuse, reprezentari specializate, reprezentaii 3D si reprezentari de suprafete. 4. Reprezentiri grafice 2D Acest tip de reprezentéri sunt desenate cu ajutorul comenzii_ plot. Cea mai simpla forma a acestei comenzi este de forma: plot (argument) sau plot (x,y) 38 Lucrarea 4 — Reprezentari grafice unde argumentul poate fi un numar complex, un vector sau o matrice. In urma executiei acestei comenzi, graficele vor avea implicit culoarea albastra, insa utiizatorul are posibilitatea de a formata graficul dupa preferinte. Prin urmare, comanda ce permite formatarea graficelor este de forma [1]: plot (x,y, 'parametrii_de formatare') unde x reprezinta valorile de pe abscisa, y reprezinté valorile de pe ordonata, iar parametrii_de formatare reprezinté un argument optional care poate fi utilizat pentru a specifica culoarea, tipul de linie si tipul de marcaj [1]. Mai jos sunt prezentate optiunile ce pot fi utilizate pentru configurarea de culoare, de linie si de marcaj. Tabelul 4.1. Optiunile de formatare a functiei plot Culoare Tip linie Tip marcaj Simbol_ | Descrire | Simbol | Descriere | Simbol | Descriere yellow _ : . y igaber) continua semnul plus rm magenta = intrerupta ° cere (purpuriu) < cyan : 5 . 5 > (oo : punctata steluta r red (rosu) =. linie-punct : punet ° green 7 semnul x ° (verde) sau cruce blue e {albastru) . patrat w white (alb) 4 romb . black * triunghi cu (negru) varful in sus . triunghi cu . varful in jos 39 Lucrarea 4 — Reprezentari grafice triunghi cu > varful la dreapta triunghi cu < varful la stanga pentagrama stelata hexagrama stelata Exemplu: Sa se reprezinte grafic cei doi vector. >> x = [0 2 4 6 8 10 12 14 16 18 20]; >> y = [0 18.7 22.11 31.01 42.32 46.97 49.51 1.56]3 18 51.45 51.58 Pentru a reprezenta grafic cei doi vectori Matlab ofera doud metode. O prima metoda presupune: - Se declara cei doi vectori x gi y in Command Window - Se selecteaza ce doua variabile x gi y din Workspace - Din meniul Home sectiune Plots se selecteaza tipul de reprezentare dorit (vezi figura 4.1) ‘A doua metoda, presupune reprezentarea grafic direct din line comanda prin apelarea functiei plot. pox = [0 2 4 6 8 10 12 14 16 18 20]; >>y = [0 18.7 22.11 31.01 42.32 46.97 49.51 51.18 51.45 51.58 51.56]; >>plot (x,y) In urma apelri functiei plot se va deschide fereastra Figure, ce contine graficul dorit (vezi figura 4.2). 40 Lucrarea 4 — Reprezentari grafice Eo lan Figura 4.1. Reprezentarea graficd direct din Workspace Deesaog re Figura 4.2. Reprezentarea grafica a vectorilor x si y De cele mai multe ori in inginerie este necesar sA se specifice mai multe detalii ale reprezentarilor grafice. Urmatoarele comenzi permit cosmetizarea graficului din line comanda. 4 Lucrarea 4 — Reprezentari grafice Tabelul 4.2. Optiuni de cosmetizare ale graficului ‘Comandé Deseriere xlabel( ) Permite adaugarea unei etichete pe axa x ylabel( } Permite adaugarea unei etichete pe axa y title( ) Permite adaugarea unui titlu legend( ) Permite adaugarea legendei text () Permite adaugarea unui text la o locatie specificata gtext( } Permite addugarea unui text pe grafic folosind mouse-ul grid on/off Permite adaugarea unei grile pe grafic O alta modalitate de personalizare a graficelor este cea interactiva, utilizand setul de instrumente furnizat de fereastra Figure. De asemenea, sunt situatii care necesita reprezentarea in aceeasi fereastra a mai multor grafice pentru o analiza comparativa. in Matlab exista trei modalitati 1. Prima metoda presupune utilizarea comenzii hold. - hold on - ,memoreaza’ graficul curent adaugand urmatoarele grafice peste cel curent; - hold off - anuleaza proprietatea de a ,memora” graficul curent; - is hold - verificd daca este activa functia hold, returneazé 1 daca este activa si 0 daca este dezactivata, 2. Adoua metoda presupune utilizarea functiei plot cu mai multe argumente. Exemplu’ plot (x1,yl,x2,y2)% reprezinté simultan mai multe grafice in acelagi sistem de coordonate 3. A treia metoda presupune utilizarea functiei subplot Aceasta functie imparte fereastra Figure intr-o matrice m x n dreptunghiulara, Forma general a acestei functii este: 42 Lucrarea 4 — Reprezentari grafice subplot (m,n,p) Unde: m reprezinté numarul de randuri ale subferestrelor, n reprezinté numarul de coloane ale subferestrelor, iar p reprezinta subfereastra vizata Pm eel pa ty fel) eal | ee te n=3 Figura 4.3. impartirea in subferestre folosind subplot (2,3,p), unde p=1,6 2. Reprezentarea grafic in coordonate logaritmice Pentru reprezentarea graficd in coordonate logaritmice si semilogaritmice se utilizeazé urmatoarele functi: - loglog (x,y): permite realizarea graficelor 2D, ambele axe sunt scalate logaritmic; ~ semi logx (x, y) permite realizarea graficelor 2D, doar axa x este scalaté logaritmic; - semilogy (x,y): permite realizarea graficelor 2D, doar axa y este scalaté logaritmic; 3. Functii specializate 2D Cele mai comune functii specializate 2D utilizate in Matlab sunt detaliate in tabelul 43. Tabelul 4.3. Functii 2D Functie Descriere area _ | Reprezinté o suprafata plina. 43 Lucrarea 4 — Reprezentari grafice bar —_| Reprezinta grafice cu bare Reprezinté grafic vectorii argument, precizati prin proiecttile pe axe, cu compass sgetile oreintate dinspre origine. cornet | Reprezinta dinamic traiectoria unui punct. errorbar | Reprezentarea grafica a erorilor. Reprezinta grafic vectorii argument, precizati prin proiectille pe axe, feathe ESEnE= | ordonati echidistant pe axa orizontala fill | Reprezentarea grafica a poligoanelor. fplot — | Reprezinta grafice cu parametrii impusi hist | Reprezinta grafic histograma datelor. polar _ | Reprezinta grafice in coordonate polare. rose | Reprezinté grafic histograma unghiulara a dateor in coordonate polare stairs | Repezinta grafice in trepte. stem — | Repezinta grafice sub forma discretas 4. Reprezentari grafice 3D Reprezentarea liniilor in spatiul tridimensional este realizat cu ajutorul comenzii plot3. Acest tip de reprezentare este util in situatile in care se doreste reprezentarea unor date care consta in mai mult de doua variabile. Daca pentru reprezentarea 2D sunt necesare doua variabile pentru reprezentarea 3D sunt necesare trei variabile Forma general a acestei comenzi este similara cu cea a comenzii plot si este de forma plot3(x,y,z,'parametrii_de formatare') unde x, y $i 2 reprezinté vectori ai punctelor de coordonate, iar parametrii_de_formatare este un argument optional care poate fi utilizat pentru a specifica culoarea, tipul de linie si tipul de marcaj. Cei trei vectori trebuie sa aiba acelasi numar de elemente. 44 Lucrarea 4 — Reprezentari grafice Exemplu: >> t=O:pi/50:10*pis >> xssin(t); >> y=cos(t)s >> plot3(x,y,t);xlabel('axa x');ylabel('axa y');zlabel('axa z') in urma executiei acestui exemplu rezulta figura 4.4. Figura 4.4. Reprezentarea 3D a funotilor sinus si cosinus De asemenea, pentru a reprezenta suprafete, Matlab pune la dispozitie comanda mesh. Exemplu: Fie functia: (x. » , pentru xe[-2 2] si ye[-4 4]. SA se reprezinte suprafata ce reprezinta graficul unei functii de doud variabile == f(x,y). Pentru inceput trebuie stabilite matricele ce definesc domeniul de definitie. Comanda meshgrid are rolul de a transforma domeniile de tip vector in matrice, deoarece comanda sur utilizeaza ca variabile de intrare matrice. >>[x, y]=meshgrid (-2:2,-4:4) pozex.ty./(x.%2+y.%241) 7 >>surf (x,y,z) 45 Lucrarea 4 — Reprezentari grafice Figura 4.5. Reprezentarea functiei z Comanda surf se poate inlocui cu urmatoarele comenzi: mesh, surfc, meshe. Comenzile surfc si mesh deseneaza gi linille de contur in planul xoy. In cazul in care se doreste doar desenarea liniilor de contur se pot folosi comenzile: contour (x, y,2)$icontourf (x,y,z). contourf (x,y,z) aregiroluldeaumple diferentele de nivel cu o culoare Pentru reprezentarea in spatiu a celor mai cunoscute figuri geometrice, Matlab pune la dispozitie urmatoarele comenzi - cylinder (x,n) returneazé coordonatele x, y si z ale unui cilindru de raza r, cu n puncte pe circumferinta; - sphere (n) returneaza suprafata unei sfere cu n puncte pe cirfumferinta. Implicit n = 20; - ellipsoid(xc, yc, zc,rx, ry, rz) returneaza un elipsoid. 5. Export / import de grafice Matlab pune la dispozitie mai multe metode de salvare a reprezentarilor grafice. Prin urmare aveti posibilitatea de a salva reprezentarea grafica ca o imagine sau ca un fisier grafic. Reprezentarile grafice salvate ca imagine pot fi importate cu usurint& in Microsoft Word sau in alté aplicatie. Cu toate acestea, imaginile nu mai pot fi editate (cum ar fi editarea de linii, text), in schimb figierele grafice stocheaza si datele de la baza reprezentari, ele putand fi ulterior editate si prelucrate. O prima metoda este cea din linie comanda prin intermediul comenzii save ic. 46 Lucrarea 4 — Reprezentari grafice Forma generala a acestei comenzi este [1]: savefig('nume_figura.fig') sau saveas(gcf, ‘nume_figura.extensie') unde gcf face referire la figura curenta. Daca dorim s& vizualizam o figura care este salvatd, utiizim comanda openfig. Fisierele cu extensia fig pot fi deschise numai in Matlab. Forma general a acestei comenzi este: openfig('nume_figura.fig') A doua metoda este interactiva si presupune utilizarea instrumentelor puse la dispozitie de fereastra Figure Pentru export de grafice: accesati meniul File > Save/Save as sau File — Export Setup — Export. Pentru import de grafice: accesati meniul File Open Bibliografie [1] A. Gilat, Matlab An Introduction with Applications. Fifth Edition” , Wiley, 2015. [2] N. Breaz, M. Craciun, P. Gaspar, M. Miroriu, |. Paraschiv-Munteanu, ,Modelarea matematica prin Matlab”, 2011 Cerinte: 1, Sa de introduca in Matlab toate instructiunile de prezentate in aceasta lucrare. 2. Sa se reprezinte grafic functiile: 47 Lucrarea 4 — Reprezentari grafice bo» xIn(x? +2)definite pe intervalul x <[-2 2] SA se reprezinte ambele functii pe acelasi grafic (suprapus). 3. Sa se reprezinte grafic functile b. y, subferestre. cos2x definite pe intervalul x <[o 47]. Sa se reprezinte ambele funotii in 4. Sse reprezinte graficul functiei z = ec [ery Se vor utiliza comenzile: mesh, meshc, surf, surfe, pe domeniul x € [-8 8], y € [-8 8]. 5. Sa se reprezinte grafic, pe intervalul x <[-10 10], functia: y= x° +3x+2. 6. Utilizand graficul de la cerinta 4, adaugati din linie comanda titlu si etichete pentru axe. 7. S& se reprezinte grafic, cu linie neagr& intrerupta, functia f(x)=cosx pentru xe[-4 I] ou pas de 0.01. 8. Sa se traseze suprafata definitaé de z=xsin(y)cos(x) pe domeniul xe[-7 z], yc[-7 7] sis& se editeze modul de colorare al suprafetei 9. SA se deseneze urmatoare figuri geometrice: un cilindru si o sfera. Salvati fiecare figura utilzand modul interactiv cat si metoda din linie comanda. 10.8 se reprezinte in coordonate logaritmice si semilogaritmice _functia f(x) = 10x" +3x+1, pe intervalul x<[-10 10]. 11.88 se reprezinte dinamic functia f(x) =cosx atat in planul 2D cat si in planul 3D. 48

You might also like