Sunteți pe pagina 1din 6

ndrumar de laborator

Teoria Sistemelor

REPREZENTRI GRAFICE N MATLAB

OBIECTIVE

Reprezentri grafice 2D.


Reprezentri grafice 3D.

3.1. Introducere
Matlab-ul ofer o varietate relativ larg de funcii pentru realizarea
reprezentrilor grafice. Cu ajutorul funciilor oferite de Matlab se pot reprezenta
grafice bidimensionale (2D) i tridimensionale (3D), reprezentri grafice n
coordonate liniare, n coordonate logaritmice sau n coordonate polare. De
asemenea, graficele realizate n Matlab pot fi marcate (se poate preciza titlul
graficului, se pot plasa etichete pe axe, se poate nota un text pe grafic la o poziie
impus, sau la o poziie selectabil cu mouse-ul, sau se poate trasa o reea de linii
ajuttoare pe grafic).

3.2. Reprezentri grafice bidimensionale (2D)


Reprezentarea graficelor bidimensionale se poate face n coordonate liniare,
logaritmice, semilogaritmice sau polare. Studiul reprezentrilor grafice este aplicabil
n cazul diferitelor tipuri de funcii de sisteme ce reprezint esena i finalitatea
studiului propus de acest laborator. n plus, ca i remarc, toate sistemele cunoscute
i studiate nu pot fi sustrase acestei reguli. Aadar, toate aceste reprezentri grafice
vor fi detaliate n continuare.
Pentru reprezentarea grafic n coordonate liniare se utilizeaz funcia plot,
care poate fi apelat cu una dintre sintaxele:
plot(y),
plot(x,y,linie_tip),

plot(x,y),
plot(x1,y1,x2,y2,x3,y3,),

unde:
plot(y)- reprezint grafic argumentul y n funcie de indici, cu urmtoarele
precizri:

dac argumentul y este complex, plot(y)


plot(real(y),imag(y));

dac y este un vector (linie sau coloan), funcia plot traseaz graficul
y = y (i ) , unde i = 1,2,3,, n este numrul de ordine al elementului y;

33

este echivalent

cu

ndrumar de laborator

Teoria Sistemelor

dac y este o matrice de dimensiune mn, funcia plot traseaz graficele


y j = y j (i ) , unde i = 1,2,3,, n este numrul de ordine al elementului de pe
coloana j .

plot(x,y)- reprezint grafic vectorul y funcie de vectorul x, cu urmtoarele


precizri:

dac x este un vector, iar y este o matrice, atunci coloanele lui y sunt
trasate n funcie de vectorul x;

dac x i y sunt matrice de aceeai dimensiune, se reprezint coloanele


lui y n funcie de coloanele lui x.

plot(x1,y1,x2,y2)- reprezint simultan mai multe grafice n acelai sistem de


coordonate.
Pentru reprezentrile grafice, se asociaz fiecrei caracteristici un ir de 1
pn la 3 caractere care definesc tipul liniei, tipul indicatorului i culoarea graficului.
Aceste iruri de caractere trebuie cuprinse ntre apostroafe i menionate n
combinaia culoare-indicator sau culoare-linie-tip. Opiunile pentru culori i tipuri de
linii sau indicatoare sunt prezentate n tabelul 3.2.1:
Tab. 3.2.1 Tipurile de culori i linii

Culorile

Tipurile de linii,
indicatoare

y galben

. punct

m mov (magenta)

o cerc

c albastru - deschis (cyan)

x semnul x

r rou

+ semnul plus

g verde

- continuu

b albastru

* stea

w alb

: puncte

k negru

-. linie, punct
-- linie ntrerupt

Titlul unui grafic se poate preciza cu funcia:

title(text).
Axele unui grafic de asemenea se pot eticheta cu ajutorul funciilor
xlabel(text) i ylabel(text), iar un text se poate plasa pe grafic prin
funcia:

text(x,y,string),
unde:
34

Teoria Sistemelor

ndrumar de laborator

x,y - reprezint coordonatele unde se va plasa textul precizat n string.


Reeaua de linii grid, se poate face setnd pe on funcia grid: grid on.
tergerea reelei de linii se face cu ajutorul comenzii grid off.
n cazul mai multor caracteristici ntr-o singur figur, acestea se pot indexa cu
funcia legend(string1, string2, string3,...). n acest mod, se ataeaz
caracteristicilor desenate un text explicativ (string1, string2,....).
Indexarea se plaseaz astfel nct s nu acopere reprezentarea grafic i poate fi
mutat cu ajutorul mouse-ului astfel: se poziioneaz cursorul pe legend, iar cu
ajutorul butonului stng apsat se trage n poziia dorit. Suprapunerea mai multor
reprezentri grafice n aceeai fereastr se face setnd pe on funcia hold: hold on.
Revenirea la starea iniial se face lansnd comanda hold off.
Pentru a realiza reprezentri grafice n coordonate logaritmice sau
semilogaritmice se utilizeaz funciile loglog, semilogx i semilogy. Aceste funcii
se apeleaz cu sintaxele:
loglog(x,y),
semilogx(x,y),
semilogy(x,y).
Funcia loglog scaleaz ambele axe utiliznd logaritmul n baza 10, n timp ce
funciile semilogx i semilogy scaleaz logarirtmic numai axa x sau axa y, cealalt
ax fiind scalat liniar. Modul de utilizare al acestor funcii este identic cu cel al
funciei plot.
n Matlab se mai pot realiza i o serie de reprezentri grafice speciale cum ar
fi reprezentarea n coordonate polare, reprezentarea graficelor cu bare,
reprezentarea graficelor sub form discret (util pentru reprezentarea semnalelor
discrete) i reprezentarea graficelor n trepte (util pentru reprezentarea semnalelor
cuantizate). Reprezentarea n coordonate polare se face cu funcia polar, care poate
fi apelat cu sintaxa:

polar(theta,r,linie_tip).
Modul de folosire a opiunii linie_tip este identic cu cel al funciei plot.
Reprezentarea graficelor cu bare se face cu funcia bar, care poate fi apelat
cu una dintre sintaxele:

bar(y),
traseaz un grafic de bare cu elementele vectorului y, adic y = y i ;

bar(x,y),
traseaz un grafic de bare cu elementele vectorului y la locaiile specificate de
vectorul x; valorile lui x trebuie s fie egal deprtate i cresctoare;

[xb,yb]=bar(y) i [xb,yb]=bar(x,y),
calculeaz vectorii xb i yb, astfel nct plot(xb,yb) s poat trasa graficul cu
bare.
Reprezentarea discret a datelor se face cu funcia stem, sub forma unor linii
terminate cu cercule la extremitatea opus axei. Se apeleaz cu sintaxa:

stem(x,y,linie_tip).
Graficele n trepte sunt utilizate la reprezentarea diagramelor sistemelor
numerice de eantionare i prelucrare a datelor.
35

Teoria Sistemelor

ndrumar de laborator

Reprezentarea grafic n trepte se face cu funcia stairs, care se apeleaz cu


una dintre sintaxele:

stairs(y),
traseaz graficul n trepte al elementelor vectorului y;

stairs(x,y),
traseaz graficul n trepte al elementelor vectorului y la locaiile specificate de
vectorul x; valorile lui x trebuie s fie egal deprtate i cresctoare;

[xb,yb]=stairs(y) i [xb,yb]=stairs(x,y),
calculeaz vectorii xb i yb, astfel nct plot(xb,yb) s poat trasa graficul n
trepte.

3.3. Reprezentri grafice tridimensionale (3D)


Reprezentrile grafice 3D se pot realiza n trei moduri: reprezentarea de tip
contur, reprezentarea de tip mesh i reprezentarea dreptelor i punctelor n spaiul
tridimensional. Reprezentarea dreptelor se realizeaz folosind funcia plot3 care este
asemntoare funciei plot.
Pentru ca o funcie de dou variabile s poat fi reprezentat, ( z = f ( x, y ) ),
este necesar generarea unei reele de noduri n planul xOy. n nodurile reelei se
calculeaz valoarea funciei de reprezentat.
n Matlab generarea unei astfel de reele se face cu funcia
[X,Y]=meshgrid(x,y). Aceast funcie transform domeniul plan definit de cei
doi vectori x i y monotoni cresctori i cu pas constant n matricele X i Y. Dac
vectorul x este de lungime n, iar vectorul y de lungime m, atunci matricele X i Y vor
avea dimensiunea nxm.
Funciile de dou variabile se pot reprezenta cu ajutorul liniilor de contur,
folosind funciile contour n cazul bidimensional, respectiv contour3 n cazul
tridimensional. Cele dou funcii au sintaxe de apelare asemntoare:

contour(Z),
contour(X,Y,Z).

Cu prima comand se obine reprezentarea cu linii de contur a matricei Z, ce


conine rezultatul evalurii funciei de dou variabile reprezentate pe domeniul
considerat. Implicit se traseaz 10 linii de contur, de culori diferite. n cazul celei de a
doua sintaxe, se precizeaz i matricele X i Y care au definit nodurile n domeniul
considerat. n acest caz, autoscalarea celor dou axe se va face n funcie de cei doi
vectori.
Exemplul 3.1
3

y
S se reprezinte grafic expresia z = x 3 + .
2
% se va realiza o reprezentare de tip contur
%grafic 3D de tip mesh
% se genereaz valori pentru vectorii x i y
x=[-1:.1:1];
y=[-2:.1:2];
36

un

ndrumar de laborator

Teoria Sistemelor

% se introduce comanda meshgrid care folosete vectorii


%x i y i evalueaz funcia ntre un sistem %rectangular
prin construirea tablourilor X i Y, care %pot fi
utilizate la evaluarea unei funcii de dou %variabile,
precum funcia z. Liniile lui X sunt copii %ale
vectorului x, iar coloanele lui Y sunt copii ale
%vectorului y
[X,Y]=meshgrid(x,y);
% se calculeaz z ca o matrice prin efectuarea
%operaiilor asupra lui X i Y.
z=X.^3+(Y/2).^3;
% se face o reprezentare a conturului i o reprezentare
%3D de tip mesh, ca dou subgrafice folosind funcia
%subplot (vezi help subplot)
subplot(1,2,1)
contour(z) % figura 3.3.1a
subplot(1,2,2)
mesh(z) % figura 3.3.1b

Fig. 3.3.1 a,b

3.4. Exerciii propuse


Exerciiul 3.4.1

S se reprezinte grafic funciile f (t ) = sin( 250t ) cu linie punct de culoare


verde i g (t ) = f (t ) + 0,2 cu indicator stea de culoare roie ( t = [0 : 0.02] cu pasul
0.001).
Exerciiul 3.4.2

S se reprezinte n coordonate semilogaritmice (axa y), funcia f ( x ) = 10 x


( x = [0 : 10] cu pasul 0.1).
Exerciiul 3.4.3

S se reprezinte n
( t = [0 : 2 * pi ] cu pasul 0.01).

coordonate

Exerciiul 3.4.4

S se reprezinte funcia discret sinus:


37

polare

funcia

f (t ) = sin(2t ) cos( 2t )

ndrumar de laborator

Teoria Sistemelor

2
f [n ] = sin n ,
10

n [0, 20]

Exerciiul 3.4.5
S se reprezinte graficul n trepte al funciei y = sin( x ) ( x = [0 : 6] cu pasul
0.2).
Exerciiul 3.4.6
S se reprezinte grafic urmtoarea funcie, unde x = [5 : 5] cu pasul 0.1:
f (x) =

xx
1+ x 2

Exerciiul 3.4.7
S se reprezinte un grafic 3D unde:

x = cos(2t ) ; y = sin(2t ) i t = [2 : 0.01 : 2] .


Exerciiul 3.4.8
S se reprezinte grafic, de tip mesh, funcia:
z = x 2 y 2 ( x = y = [2 : 0.01 : 2] ).

38

S-ar putea să vă placă și