Professional Documents
Culture Documents
1. Scopul lucrării.
Reprezentarile grafice
2. Conţinutul lucrării.
3. Prezentarea lucrării.
4. Exemple
Pentru reprezentarea datelor în coordonate liniare se utilizează funcţia plot, se apelează cu una
din sintaxele:
plot(y) plot(x,y)
plot(x,y,’linie-tip’) plot(x1,y1,x2,y2,…)
---subplot, title, xlabel, ylabel, grid on,grid off, gtext, text----
plot(y) reprezintă grafic argumentul y funcţie de indici, cu următoarele previzări:
a) - dacă argumentul y este complex, plot(y) este echivalent cu plot(real(y),imag(y));
b) - dacă y este vector (linie sau coloană), funcţia plot treasează graficul y=y(i), unde i=
1,2,3…n;
c) - dacă y este o matrice m x n, funcţia plot trasează graficele yj=yj(i) unde i=1,2,..n;
plot(y) reprezintă grafic vectorul y funcţie de vectorul x, cu următoarele precizări:
a) - dacă x este vector, iar y este matrice, atunci coloanele lui y sunt trasate funcţie de
vectorul x;
b) - dacă x şi y sunt matrice de aceeaşi dimensiune, se reprezintă coloanele lui y funcţie
de coloanele lui x.
plot(x1,y1,x2,y2 -reprezintă simultan mai multe grafice în acelaşi sistem de coordonate.
1
Graficele se pot reprezinta utilizând linii, markere şi culori după codul din tabelul:
Reprezentarea grafică cu bare se face cu funcţia bar, se apelează cu una din sintaxele:
bar(y) - trasează un grafic de bare cu elementele vectorului y, adică y=yi
bar(x,y) - trasează un grafic de bare cu elementele vectorului y la locaţiile specificate
de vectorul x, adică y=y(x).Valorile lui x trebuie să fie egal depărtate şi crescătoare.
Reprezentarea grafică în trepte se face cu funcţia stairs, care se apelează cu una din sintaxele:
stairs(y) -trasează graficul în trepte al elementelor vectorului y
stairs(x,y) -trasează graficul în trepte al elementelor vectorului y la locaţiile specificate în
x. Valorile lui x trebuie să fie egal depărtate şi în ordine crescătoare
Reprezentarea grafică a datelor cu bare de eroare ataşează fiecărei perechi (x,y) eroarea
precizată într-un vector cu aceleaşi dimensiuni; se apelează cu sintaxa: errorbar(x,y,e)
2
unde: z este numărul complex x+iy, iar x şi y sunt numere reale – proiecţia vectorului pe abscisă şi
ordonată.
Reprezentarea linilor în spaţiu se face cu funcţia plot3, care se apelează cu una dintre sintaxele:
plot3 (x,y,z) -unde x,y şi z sunt vectori de aceeaşi dimensiune, reprezintă grafic o linie în spaţiul
3D, linie care trece prin punctele ale căror coordonate sunt tripletele (x,y,z);
plot3(x,y,z) -unde x,y şi z sunt matrice de aceleaşi dimensiuni, reprezintă grafic câte o linie în
spaţiul 3D, pentru fiecare triplet al coloanelor matricelor [X(:,i),Y(:,i),Z(:,i)];
Reprezentarea grafică în spaţiu a poliedrelor se face cu funcţia fill3, care se apelează cu una
dintre sintaxele:
fill3(x,y,z,c) fill3(x,y,z,’c’) fill3(x1,y1,z1,c1,x2,y2,z2,c2,…..)
Funcţiile surf şi surfc reprezintă suprafeţe 2D sau suprafeţe 3D asociate cu liniile de nivel
proiectate pe planul bazei; se apelează cu una dintre sintaxele:
surf(X,Y,Z,C) -reprezintă o suprafaţă deschisă de matricele X,Y şi Z, şi colorată cu elemente
precizate în matricea C. În utilizări simple argumentele X şi Y pot fi vectori sau pot fi
omise; argumentul C poate fi şi el omis;
surf(X,Y,Z) -consideră C=Z, astfel încât culoarea este proporţională cu înălţimea suprafeţei;
surf(x,y,Z) şi surf(x,y,Z,C) - realizează reprezentarea suprafeţei descrise de matricea
(mxn), unde vectorul x are dimensiunea n, vectorul y are dimensiunea m, iar matricea
C are dimensiunea m x n;
3
surf(Z) şi surf(Z,C) -presupune x=1:n şi y=1:m pentru reprezentarea grafică 3D a matricei Z, folosind
eventual şi matricea de culoare C;
surfc(…) -este identică cu surf(…), exceptând liniile de nivel, care sunt reprezentate sub
suprafaţă, pe acelaşi grafic.
Funcţia cylinder generează un cilindru de rază R, cu cercul bazei aproximativ din N puncte
echidistante; se apelează cu sintaxa: [x,y,z]=cylinder(R,N)
Funcţia sphere generează coordonatele (x,y,z) ale sferei unitare, care pot fi utilizate cu
funcţiile surf şi mesh, se apelează cu una dintre sintaxele:
[x,y,z]=sphere(n) -generează coordonatele sferei în trei matrice (n+1)x(n+1), care pot fi
reprezentate grafic cu funcţia surf (x,y,z) sau mesh (x,y,z).
sphere(n) -reprezintă grafic suprafaţa unei sfere.
Matricea care conţine perechile de coordonate (X,Y) ale fiecărei linii de contur, se determină cu
funcţia contourc; se apelează cu una dintre sintaxele:
C=contourc(Z) -calculează matricea liniilor de contur ale matricei Z. Numărul liniilor de nivel
şi valorile acestora sunt alese automat;
C=contourc(Z,n) -calculează matrice liniilor de contur ale matricei Z pentru n linii de contur(n
este un scalar);
C=contourc(Z,v) -calculează matricea liniilor de contur ale matricei Z la nivelele specificate de
vectorul v;
C=contourc(x,yZ),C=contourc(x,y,z,n) şi C=contourc(x,y,Z,v) -calculează matricea liniilor de
contur ale matricei Z şi utilizează date din vectorii x şi y pentru a controla
scalarea axelor Ox şi Oy. Elementele x şi y sunt cu pas constant.
Pentru a preciza cotele liniilor de contur într-o reprezentare se foloseşte funcţia clabel; se
apelează cu una dintre sintaxele:
clabel(C) - etichetează liniile de nivel. Poziţia acestora este aleasă aleatoriu;
clabel(C,V) - etichetează liniile de nivel precizate de vector V;
clabel(C,’manual’) - etichetează liniile de nivel selectate cu mouse-ul. Se apasă tasta „ENTER”
pentru a termina acţiunea şi „Space Bar” pentru a introduce următoarea linie de
nivel.
4
contour3(Z) -realizează reprezentarea 3D a liniilor de contur ale matricei Z;
contour3(Z,N) -realizează reprezentarea 3D a N linii de contur ale matricei Z;
contour3(X,Y,Z,) şi contour3(X,Y,Z,N) -utilizează matricele X şi Y pentru a defini limitele
axelor.
Reprezentarea grafică a unui câmp de vectori orientaţi foloseşte funcţia quiver, se apelează cu
una din sintaxele:
quiver(X,Y,DX,DY) -reprezintă mici segmente de dreaptă cu săgeţi (vectori) având originea la
perechile de elemente (X,Y). Fiecare pereche de elemente din matricele DX şi DY sunt proiecţiile
vectorului pe axele Ox şi Oy;
quiver(DX,DY) - presupune implicit X=1:n şi Y=1:m. În acest caz DX şi DY sunt pe o reţea
rectangulară;
quiver(x,y,dx,dy,s) şi quiver(dx,dy,s) - controlează lungimea săgeţilor prin factorul de scală s.
4. EXEMPLE
Reprezentarea grafică în
coordonate liniare
5
Reprezentarea grafică în coordonate semilogaritmice
(axa y)
6
Reprezentarea grafică a unei
histograme
4.14 Să se reprezinte grafic un con de rază Rc1=0.5 şi înălţime Hc=7.5 şi un trunchi de piramidă cu
bază hexagonală, cu cercurile circumscrise bazele de raze Rp1=1 şi Rp2=0.5 şi înălţime Hp=7.5.
Cu secvenţa MATLAB:
Rc1= 0.5; Rc2=0; Hc=7.5; N=30;
[xc,yc,zc]=cylinder ([Rc1 Rc2],N);zc=zc*Hc;
view([-37.5 30]); surface (xc,yc,zc); grid
figure
Rp1=1; Rp2=0.5; Hp=7.5; N=6;
[xp,yp,zp]=cylinder ([Rp1 Rp2], N); zp=zp*Hp;
view([-37.5 30]); surface (xp, yp, zp);grid
se obţine reprezentarea grafică din figura:
8
Reprezentarea grafică a obiectelor cu funcţia cylinder
[X,Y] = meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
mesh(X,Y,Z,’EdgeColor’,’black’)
9
surf(X,Y,Z)
colormap hsv
colorbar
surf(X,Y,Z,’FaceColor’,’red’,’EdgeColor’,’none’);
camlight left; lighting phong
view(-15,65)
R=sqrt(X.^2+Y.^2)+eps;
Z=sin(R)./R;
10
whitebg
x=-pi/2:pi/100:pi/2;
y=-pi/2:pi/100:pi/2;
[X,Y]=meshgrid(x,y);
Z=sin(X.^2+Y.^2);
meshc(X,Y,Z)
colormap(hsv )
legend
11
Opţional!!!!
Probleme propuse:
4. Să se reprezinte graficul funcţiilor:
tg ( x)
a ) y = sin( x ) + 2
− cos 2 ( x), 0 < x < π / 4
x
b) y = (x 4
)
− x 3 + e x −10 ) , 1 < x < 20
5. Să se deseneze o fată zâmbitoare şi una tristă în două grafice diferite pe un singur ecran.
Exemple:
3. Să se reprezinte suprafeţele:
a ) z = sin( x) y + cos( y ) x, − 2 < x < 2, − 2 < y < 2;
b) z = e x +y − log( x + y ) − xy , 1 < x <10 , 1 < y <10 ;
12