Documente Academic
Documente Profesional
Documente Cultură
CURS 11
Cele mai utilizate funcții utilizate pentru manipularea și personalizarea graficelor sunt:
Exemplu:
x=0:0.01:30;
y1=200*exp(-0.05*x).*sin(x);
y2=100*exp(-0.5*x).*sin(10*x);
plot(x,y1);
hold on;
plot(x,y2);
Informatica aplicată 2 - MATLAB 2
200
150
100
50
-50
-100
-150
-200
0 5 10 15 20 25 30
Sintaxe:
subplot(m,n,s) împarte fereastra figură în m × n zone dreptunghiulare de afișare (analog
unui tabel cu m linii și n coloane) și specifică fereastra (celula tabelului) în care se va face
reprezentare grafică curentă prin numărul (scalarul) s; zonele de afișare sunt numerotate de la
stânga la dreapta, începând cu linia de sus. Dacă fereastra figură a fost împărțită anterior,
apelul funcției face numai specificarea subferestrei curente în care se va crea noul sistem de
axe
subplot(m,n,v) împarte fereastra figură în m × n zone dreptunghiulare de afișare (analog
unui tabel cu m linii și n coloane) și specifică ferestrele (celulele tabelului) în care se va face
reprezentare grafică curentă prin vectorul v
subplot(m,n,v,'replace') ștergerea sistemul de ferestre grafice există deja axe și crearea
unuia nou
h=subplot(...) salvează identificatorul noului sistem de axe în variabila h
subplot(h) permite ca sistemul de axe cu identificatorul h să fie cel curent
În cazul în care apelul unei funcții subplot determină suprapunerea noului sistem de axe peste unul
existent, are loc ștergerea primului.
Informatica aplicată 2 - MATLAB 3
Exemplul 1: Reprezentarea grafică în cadrane a liniilor matricei Y=[1 5 3 4;3 2 7 6;1 5 3 7;2 6
1 9].
Y=[1 5 3 4;3 2 7 6;1 5 3 7;2 6 1 9];
subplot(2,2,1);plot(Y(1,:));
subplot(2,2,2);plot(Y(2,:));
subplot(2,2,3);plot(Y(3,:));
subplot(2,2,4);plot(Y(4,:));
Exemplul 2: Reprezentarea grafică a primelor 2 linii ale matricei Y=[1 5 3 4;3 2 7 6;1 5 3 7;2 6
1 9] în grafice separate în cadranele 1 și 3, respectiv liniile 3 și 4 în același grafic care să ocupe
cadranul 2 și 4.
Y=[1 5 3 4;3 2 7 6;1 5 3 7;2 6 1 9];
subplot(2,2,1);plot(Y(1,:));
subplot(2,2,3);plot(Y(2,:));
subplot(2,2,[2 4]);plot(Y(3,:));
hold on;
plot(Y(4,:));
Informatica aplicată 2 - MATLAB 4
4. Frontierele axelor
Frontierele axelor sunt manipulate cu funcția box.
Sintaxe:
box on sunt reprezentate frontierele axelor
box off nu sunt reprezentate frontierele axelor
Exemplu: Reprezentarea primelor 2 linii ale matricei Y=[1 5 3 4;3 2 7 6;1 5 3 7;2 6 1 9] în
grafice cu, respectiv fără reprezentarea frontierele axelor.
Y=[1 5 3 4;3 2 7 6;1 5 3 7;2 6 1 9];
figure;plot(Y(1,:));box on;
figure;plot(Y(2,:));box off;
axis ij plasează originea sistemului de coordonate în colțul din stânga sus: i este axa
verticală cu valori care cresc de sus în jos, iar j este axa orizontală, cu valori care
cresc de la stânga la dreapta
axis xy formatul axelor este cel cartezian (implicit)
axis equal stabilește raportul de aspect, astfel ca unitățile să fie aceleași în fiecare direcție.
Raportul de aspect ale axelor x,y,z este ajustat automat în raport de domeniul
datelor
axis square realizează un grafic de formă pătrată (2D) sau cubică (3D); această opțiune ajustează
axele x,y,z astfel încât acestea au lungimi egale și ajustează unitățile de date în
mod corespunzător
axis normal reglează automat raportul de aspect al axelor x,y,z și scalarea relativă a unităților
de date, astfel încât graficul să se potrivească cât mai bine formei figurii
axis off dezactivează toate axele, gradațiile și etichetele
axis on activează toate axele, gradațiile și etichetele
Exemplul 1:
x=0:10;
y=0:2:20;
subplot(1,2,1);plot(x,y);axis equal;
subplot(1,2,2);plot(x,y);axis square;
Exemplul 2:
subplot(1,2,1);plot(0:pi/20:2*pi,sin(0:pi/20:2*pi));
subplot(1,2,2);plot(0:pi/20:2*pi,sin(0:pi/20:2*pi));axis tight
Informatica aplicată 2 - MATLAB 7
\infty \equiv
\int
Definiția literelor grecești mari începe cu literă mare, a celor mici cu literă mică, de exemplu \Omega
pentru Ω și respectiv \omega pentru ω.
Expresiile se definesc după următoarele reguli:
expresii cu exponenți; expresia ab se definește ca a^b
expresii cu indici; expresia xi se definește ca x_i
dacă este cazul, expresiile se pot grupa între acolade, { }
Informatica aplicată 2 - MATLAB 8
sau:
e^{at}
Pentru a afișa un text inclinat (italic), vom defini acel text ca:
\ittextul dorit
iar pentru afișare cu litere groase (bold) vom defini textul ca:
\bftextul dorit
unde 'text' este un șir de caractere care reprezintă numele axei, unitatea de măsură etc. ale
graficului curent. Repetarea instrucțiunii cu alt text conduce la înlocuirea textului anterior, fără a fi
necesară refacerea reprezentării grafice.
Exemplu:
a=2;t=0:.1:4.5;v=a*t;
plot(t,v);
xlabel('timpul,[s]','FontSize',14);
ylabel('viteza,[m/s]','FontSize',14);
title(['Variatia vitezei pentru acc=',num2str(a),'m/s^2'],'FontSize',18)
Informatica aplicată 2 - MATLAB 10
Funcția text scrie șirul de caractere 'text' în poziția specificată de coordonatele (x,y). Dacă x
și y sunt vectori, funcția text scrie șirul de caractere 'text' în toate pozițiile date de perechile
(x,y).
Exemplu:
plot(0:pi/20:2*pi,sin(0:pi/20:2*pi));
text(pi,0,'\leftarrow sin(\pi)','FontSize',18)
Informatica aplicată 2 - MATLAB 11
Funcția gtext afișează șirul de caractere 'text' în fereastra grafică și așteaptă plasarea acestuia
pe grafic cu mouse-ul sau oricare tastă.
Exemplu:
plot(0:pi/20:2*pi,sin(0:pi/20:2*pi));
gtext('\leftarrow sin(\omega)','FontSize',18)
Dacă funcția grid este setată on, pe grafic sunt reprezentate liniile grid, iar dacă este off,
acestea sunt eliminate. Funcția grid stabilește proprietățile obiectului “axe curente”.
Exemplu:
a=2;t=0:.1:4.5;v=a*t;
plot(t,v);grid minor
xlabel('timpul,[s]','FontSize',14);ylabel('viteza,[m/s]','FontSize',14);
title(['Variatia vitezei pentru acc=',num2str(a),'m/s^2'],'FontSize',18);
text(t(20),v(20),['\leftarrow v=',num2str(v(20)),'m/s'],'FontSize',18);
Informatica aplicată 2 - MATLAB 12
Bibliografie
1. ***, Fundamente de Matlab, telecom.etti.tuiasi.ro/
2. Iulian Lupea, Curs Matlab
3. Nicoleta Breaz ș.a., Modelarea matematică prin Matlab
4. ***, MATLAB User’s Guide, The Mathworks Inc., SUA