370 likes | 675 Views
Grafikoni u Matlabu. Grafik oni. dvodimenzionaln i (2D) trodimenzionaln i (3D). 2D grafika. Osnovna naredba dvodimenzionaln ih grafik ona u MATLAB u je plot . >> x=linspace(0,2*pi,30); >> y=sin(x); >> plot(x,y). Kako radi naredba plot?. y=2*x+1. Kako radi naredba plot?.
E N D
Grafikoni • dvodimenzionalni (2D) • trodimenzionalni (3D)
2D grafika • Osnovna naredba dvodimenzionalnih grafikona u MATLABu je plot. >> x=linspace(0,2*pi,30); >> y=sin(x); >> plot(x,y)
Kako radi naredba plot? y=2*x+1
Kako radi naredba plot? • X=[ 1 2 3 4 5 ] • Y=[3 5 7 9 11 ] • plot(X,Y)
Kako radi naredba plot? • X=[ 1 2 3 4 5 ] • Y=2*X+1 • plot(X,Y)
2D grafikoni » plot(x,y,’r:*’)
Primer • » plot(X,Y) • » hold • » plot(X,Y,'ro')
Primer • X=1:10 • Y1=2*X+3 • Y2=3*X-1 • Plot(X,Y1,’r.’,X,Y2,’g:’)
2D grafikoni • >> z=cos(x); • >> plot(x,y,'b:p',x,z,'r-o') • >> clf • >> plot(x,y) • >> hold on • >> plot(x,z,'--') • >> xlabel('nezavisna varijabla'); • >>ylabel('varijable Y i Z') • >> title('sinusna i kosinusna kriva') • >> gtext('sin(x)') • >> legend('sin(x)','cos(x)')
3D grafikoni • Osnovna naredba za linijske 3D grafikone je plot3: >> t=linspace(0,10*pi); >> plot3(sin(t),cos(t),t) >> xlabel('sin(t)'),ylabel('cos(t)'),zlabel('t') >> title('3D Helix')
3D grafikoni • Moguće je formiranje mrežnih oblika: >> x=-7.5:0.5:7.5; >> y=x; >> [X,Y]=meshgrid(x,y); >> R=sqrt(X.^2+Y.^2); >> Z=sin(R)./R; >> mesh(X,Y,Z)
Kako radi naredba mesh? • » a=[0 0 0;0 1 0 ; 0 0 0]; • » mesh(a)
Kako radi naredba mesh? • » a=[1 1 1; 2 2 2 ; 3 3 3]; • » mesh(a)
Kako radi naredba mesh? • » x=-10:10; • » y=-10:10; • » [X,Y]=meshgrid(x,y); • » Z=X.^2 + Y.^2; • » mesh(Z)
3D grafikoni • Takvi oblici mogu se prikazati i kao površine primenom naredbe surf(X,Y,Z): • Manipulacija bojama može se najjednostavnije postaviti menjanjem tzv. colormap-a. • Primenom sledećih naredbi: >> surf(X,Y,Z) >> colormap(prism) >> axis off dobijamo:
Još neke vrste mrežastih i površinskih grafikona • Kaskadni : crta mrežu samo u jednom pravcu waterfall(X,Y,Z) • Primer: • x=-3:0.25:3; • y=-3:0.25:3; • Z=1.8.^(-1.5*sqrt(X.^2+Y.^2)).*cos(0.5*Y).*sin(X); • waterfall(X,Y,Z) • xlabel(‘x’);ylabel(‘y’) • zlabel(‘z’)
3-D konturni • Format funkcije : contour3(X,Y,Z,n) • n je broj niovoa kontura, opcioni parameter • Uraditi prethodni primer pomo’u ove funkcije
2-D konturni • crta projekciju kontura u ravni x-y • Format funkcije : contour(X,Y,Z,n) • Ponoviti prethodni primer
Specijalni trodimenzionalni grafikoni • Za crtanje sfere • Format funkcije: sphere • sphere ili [X,Y,Z]=sphere(20); • surf(X,Y,Z) • Vraća x,y,z koordinate jedinične sfere sa 20 površina • sphere (n), n je broj površina
Za crtanje cilindra • Format funkcije: • [X,Y,Z]=cylinder(r) • Vraća x,y,z coordinate cilindra profila r • t=linspace(0,pi,20); • r=1+sin(t); • [X,Y,Z]=cylinder(r); • surf(X,Y,Z) • axis square
3-D stubičasti • Format funkcije: bar3(Y) • Svaki element vektora Y je jedan stubić. Kolone su grupisane. • Y=[1 6.5 7;2 6 7;3 5.5 7;4 5 7;3 4 7;2 3 7;1 2 7]; • bar3(Y)
3-D grafikon diskretnih podataka • Prikazuje niz tačaka pomoću markera i vertikalnih linija koje se spuštaju do x-y ravni • Format funkcije: stem3(X,Y,Z) • t=0:0.2:10; • x=t; • y=sin(t); • z=t.^1.5; • stem3(x,y,z,’fill’) • grid on • xlabel(‘x’);ylabel(‘y’); zlabel(‘z’)
3-D tačkasti • Format funkcije: scatter3(X,Y,Z) • t=0:0.4:10; • x=t; • y=sin(t); • z=t.^1.5; • scatter3(x,y,z,’filled’) • grid on • colormap([0.1 0.1 0.1]) • xlabel(‘x’);ylabel(‘y’); zlabel(‘z’)
3-D kružni • Formatz funkcije: pie3 (X,explode) • X=[ 5 9 14 20]; • explode=[0 0 1 0]; • pie3(X,explode) • Explode je vector iste dužine kao X, čiji su elementi nule i jedinice. Jedinica znači da isečak treba da bude izvučen u odnosu na centar kruga.
Dve čestice , jedna s naelektrisanjem q1=2x10-10C i druga s naelektrisanjem q2=3x10-10C, nalaze se u ravni x-y u tačkama (0.25,0,0) i (-0.25,0,0). Izračunajte električni potencijal ovog para čestica u tačkama ravni x-y za -0,2≤x ≤0,2 i -0.2 ≤y ≤0,2 i nacrtajte grafikon.
Rešenje • Zadatak se rešava po sledećim koracima • U ravni x-y formirana je rešetka koja obuhvata domen -0,2 ≤x ≤0,2 i -0,2 ≤y ≤0,2. • Izračunava se rastojanje od svake tačke rešetke do čestica • Izračunava se električni potencijal u svakoj tački • Iscrtava se grafikon električnog potencijala
eps0=8.85e-12;q1=2e-10;q2=3e-10; • k=1/(4*pi*eps0); • x=-0.2:0.01:0.2; • y=-0.2:0.01:0.2; • [X,Y]=meshgrid(x,y); • r1=sqrt((X+0.25).^2+Y.^2); • r2=sqrt((X-0.25).^2+Y.^2); • V=k*(q1./r1+q2./r2); • mesh(X,Y,V) • xlabel(‘x(m)’);ylabel(‘y(m)’);zlabel(‘V(V)’)