2-D grafici MATLAB ima veliku mogućnost grafičkog prikazivanja primjenom različitih, veoma razvijenih tehnika za grafičko predstavljanje podataka. Grafički sistem MATLAB-a čine dva nivoa funkcija. Prvom nivou pripadaju visoko razvijene funkcije za prikazivanje 2-D i 3-D podataka. Drugi, niži, nivo grafičkog sistema MATLAB-a čine funkcije kojima se definiše izgled grafika (boja, orjentacija koordinatnih osa, više grafika na jednoj slici ...). Korišćenjem funkcija i prvog i drugog nivoa postiže se jasno i efektno grafičko predstavljanje podataka.
Elementarni X-Y grafici Funkcija Opis fill
2-D poligoni
loglog
2-D grafik sa logaritamskom podjelom na osama
plot
2-D grafik sa linearnom podjelom na osama
semilogx 2-D grafik sa logaritamskom podjelom samo na x-osi
semilogy 2-D grafik sa logaritamskom podjelom samo na y-osi
Specijalni X-Y grafici Funkcija Opis bar
trakasti grafik
compass
grafik koji prikazuje kompleksne elemente kao vektore sa zajedničkim početkom
errorbar
trakasti grafik greške
feather
grafik koji prikazuje kompleksne elemente kao vektore raspoređene na jednakim rastojanjima duž horizontalne ose
fplot
grafik funkcije
Specijalni X-Y grafici Funkcija Opis hist
histogram
polar
grafik u polarnim koordinatama
rose
histogram faznog ugla
stairs
stepenasti grafik
stem
grafik diskretnih podataka
comet
animirano grafiÄ?ko prikazivanje 2-D podataka
Funkcija plot Daje grafik sa linearnom podjelom na osama. Opcije: plot (Y) plot (x,Y) plot (x,Y,’marker’) plot (x1,Y1,’marker1’,x2,Y2,’marker2’, ...)
Funkcija plot plot (Y) crta kolone matrice Y u funkciji od njenih indeksa. Ako je Y kompleksna matrica, plot(Y) je ekvivalentno plot(real(Y),imag(Y)). U svim drugim sluÄ?ajevima imaginarni dio se zanemaruje. plot(x,Y) crta kolone matrice Y u funkciji od x.
Funkcija plot Koristeći opciju sa tri ulazna argumenta plot(x,Y,’marker’) može se definisati tip (vrsta i boja) linija ili oznake. marker je znakovna promjenljiva koja se sastoji od jednog, dva ili tri znaka (simbola za liniju, odnosno oznaku i boju) u zavisnosti od toga da li se definiše samo vrsta linije ili oznake, samop boja ili oboje.
Moguće su sljedeće oznake za tip i boju linije, odnosno oznake: Simbol linije ili oznake:
. o x + * -. :
tačka krug x-znak plus zvjezdica puna linija crta-tačka tačkasta linija
Simbol za boju:
y m c r g b k w
žuta magenta cijan crvena zelene plava crna bijela
Funkcija plot plot(x1,Y1,’marker1’,x2,Y2,’marker2’, ....) povezuje crteže definisane tripletima (x,Y,’marker’). Ukoliko nije definisan tip linije, MATLAB automatski crta pune linije i uzima redom prvih šest navedenih boja.
Funkcija loglog Daje grafik sa logaritamskom podjelom na x i y-osi. Opcije: loglog(x,Y) loglog(x,Y,’marker’) loglog(x1,Y1,’marker1’, x2,Y2,’marker2’,...) Značenje argumenata je isto kaoi kod funkcije plot(...). Slijedi primjer:
Primjer: Crtanje funkcije
1 x x x 1 3
2
»x=0.1:0.1:10; »y=1./(x.^3+x.^2+x+1); »loglog(x,y) »grid
u logaritamskom dijagramu.
Primjer: Grafikon:
0
10
1
10
2
10
3
10
4
10
1
10
0
10
1
10
Grafici koji se dobijaju navedenim grafičkim funkcijama nemaju oznake koordinatnih osa niti bilo koji drugi ispisan tekst, kao što je naziv grafika ili linije. Korišćenjem određenih funkcija moguće je ispisivanje teksta na grafiku u unaprijed određenoj ili proizvoljno izabranoj poziciji. Korišćenjem funkcija title i xlabel (ylabel) na grafiku se ispisuje naslov, odnosno naziv grafika i oznaka x-,y-ose. Funkcije text i gtext omogućuju da se naziv grafika, oznaka osa ili neki drugi tekst ispiše na tačno definisanoj poziciji ili poziciji izabranoj mišem
Najveće mogućnosti ima funkcija text koja raspolaže velikim brojem opcionih ulaznih argumenata kojima se definišu karakteristike teksta (pozicija, orjentacija, ...) koji se ispisuje na grafiku.
Označavanje grafike Funkcija grid gtext text title xlabel ylabel
Opis linije mreže tekst na poziciji označenoj mišem tekst na navedenoj poziciji naziv grafika oznaka za x-osu oznaka za y-osu
Funkcija gtext Postavlja tekst na poziciju izabranu mišem. Oblik: gtext(‘tekst’) tekst je tekst koji treba ispisati na grafiku. Poslije izvršenja komande, na grafiku se pojavljuje krstić koji se mišem dovodi na mjesto gdje treba ispisati tekst. Sa dva pritiska na taster miša, tekst se ispisuje.
Funkcija xlabel, ylabel, zlabel Omogućava ispisivanje oznaka za x-, y- i z-osu. Opcije: xlabel(‘tekst’) ylabel(‘tekst’) zlabel(‘tekst’) xlabel (‘tekst’) ispisuje navedeni tekst uz x-osu tekućeg dijagrama. ylabel (‘tekst’) ispisuje tekst uz y-osu . zlabel (‘tekst’) ispisuje tekst uz y-osu .
Funkcija title Ispisuje naslov, odnosno naziv za tekući crtež. Oblik: title(‘tekst’)
Osnovna naredba dvo-dimenzionalne grafike u MATLAB-u je plot. Ukoliko želimo nacrtati graf funkcije f(x)=2sin(pi*x)cos(pi/2+pi*x) na intervalu [–1,1] koristeći ukupno 100 tačaka radimo na sljedeći način: Odaberemo uzorke na x - osi >>x=linspace(-1,1,100); za svaki uzorak sa x osi izračunamo vrijednost funkcije y >>y=2*sin(pi*x).*cos(pi/2+pi*x); pozivom naredbe plot kreiramo graf koji se iscrtava na način da se sparuju točke iz x i y matrica te se iscrtavaju u koordinantnom sistemu >>plot(x,y)
Ime grafa, te oznake x i y osi dodaju se na sljedeći način: >>title('Graf') >>xlabel('x os') >>ylabel('y os') Dodavanje mreže na sliku izvodi fja grid. >>grid
Mrežu uklanjamo sa grid ili grid off.
Mijenjanje boje linije kojom je graf nacrtan izvodimo trećim parametrom funkcije plot. >>plot(x,y,'r+')
Na isti crtež može se prikazati i više grafikona. Npr.: >>plot(x,y,'k', x,y/2,'g'); Uključimo još prikaz legende: >>legend('Funkcija','Pola funkcije');
Poziv funkcije plot prebriše sadržaj postojećeg crteža. Naredba hold omogućava da svi daljnji pozivi funkciji plot crtaju grafikone na istom crtežu. Isključuje se sa hold off. Za brisanje crteža koristimo clg (ili clf). Za povećavanje prikaza koristimo naredbu zoom. Klikom na sliku povećavamo željeni dio. Zoom out vraća prikaz na standardnu veličinu.
Grafičko prikazivanje 3-D podataka MATLAB nudi različite funkcije za prikazivanje trodimenzionalnih podataka. Boja je definisana vektorom od tri elementa koji imaju vrijednosti od 0 do 1 i definišu intenzitet crvene, zelene i plave boje, respektivno (tzv. RGB vrijednosti). Npr. [0 0 0] je crna, [1 1 1] je bijela, [1 0 0 ] je crvena, [0.5 0.5 0.5] je zelena i [27/255 1 212/255] je marinsko plava. Stoga matrica boja mo\e imati bilo koji broj vrsta, ali samo tri kolone.
Funkcije za crtanje linija i popunjavanje površina u 3-D prostoru Funkcija Opis comet3
animirano grafičko prikazivanje 3-D podataka
fill3
3-D poligoni popunjeni bojom
plot3
linije i tačke u 3-D prostoru
Konturni 2-D i 3-D i drugi 2-D i 3-D grafici 3-D podataka Funkcija
Opis
clabel
oznake konturnih linija
contour
konturne linije u 2-D prostoru
contour3
konturne linije u 3-D prostoru
contourc
matrica konturnog crteĹža
image
prikazivanje slike definisane matricom boja
pcolor
karta boja
quiver
prikazivanje podataka vektorima definisanog praca, smjera i intenziteta
Obojene i mrežaste površine Funkcija
Opis
mesh
3-D mrežaste površine
meshc
3-D mrežaste površine sa konturnim linijama
meshz
3-D mrežaste površine sa linijskim zastorom ili referentnom ravni ispod površine
slice
grafik koji pokazuje površine presjeka određene zapremine
surf
3-D obojene površine
surfc
3-D obojene površine sa konturnim linijama
surf1
3-D obojene površine sa svjetlosnim efektima
waterfull
nepotpune mrežaste površine
3D grafika Osnovna naredba koju koristimo za prikaz 3D grafike je plot3. >>t = 0:pi/50:10*pi; >>plot3(sin(t),cos(t),t) >>grid on >>axis square
Druga naredba koja se koristi za prikaz 3D slike je naredba "mesh(x,y,z)". Pri tom, x i y su vektori dimenzija n, odnosno m, a z je matrica dimenzija nxm. Ako izostavimo x i y, u tom će slučaju odgovarajućim vrijednostima na x, odnosno y osi biti pridružena odgovarajuća vrijednost matrice z.
Konkretno: >>a=1:10; >>b=11:20; >>c=21:30; >>d=linspace(25,30,10); >>e=linspace(35,40,10); >>m=[a;b;c;d;e;e;d;c;b;a]; >>mesh(m) rezultira prikazom
Takođe je moguće oblike prikazati s ispunjenim površinama >>surf(m). rezultira prikazom