7
7
GRAFIK DALAM MATLAB
GRAFIK DALAM MATLAB
Grafk mempunyai kelebiha
Grafk mempunyai kelebihan dalam n dalam hal menjelaskan secara cepat hubungan antarahal menjelaskan secara cepat hubungan antara satu variabel dengan variabel lain dibandingkan dengan penjelasan secara verbal. Oleh satu variabel dengan variabel lain dibandingkan dengan penjelasan secara verbal. Oleh kar
karena ena itu itu kemkemampuampuan an membmembuat uat grafgrafk k dengdengan an salasalah h satu satu bahbahasa asa pemrpemrograogramanman mempunyai manaat yang sangat penting.
mempunyai manaat yang sangat penting. MA
MATA! TA! sebsebagagai ai babahahasa sa pempemrorogragramaman n tintingkgkat at tintinggi ggi memmemililiki iki asasiliilitatas s untuntukuk membuat grafk dengan cara yang mudah. "engguna dapat membuat grafk # dimensi membuat grafk dengan cara yang mudah. "engguna dapat membuat grafk # dimensi maup
maupun un tiga tiga dimedimensi nsi dengdengan an periperintahntah$per$perintaintah h tertetertentu. ntu. "e"erintrintah$pah$perinerintah tah grafgrafk k ## dime
dimensi nsi diandiantartaranyaanya%% plot, plot, polar, polar, plotyy, plotyy, semilogsemilogx, x, semilogysemilogy, , loglog, loglog, bar,bar, area
area dan lainndan lainnya. Grafk & ya. Grafk & dimedimensi dapat dibuat dengan perintnsi dapat dibuat dengan perintah$pah$perinerintah %tah % plot3, plot3, mesh, su
mesh, surf, filrf, fill3l3 dan lain sebagainya. dan lain sebagainya.
'.
'. G(
G(A)
A)*+ # ,
*+ # ,*M
*M-
-/*
/*
a.a. Perintah-Perintah Grafk 2 DimensiPerintah-Perintah Grafk 2 Dimensi
!e
!eberberapapa a concontoh toh perperintintahah$pe$perinrintah tah grgrafk afk dadalam lam # # dimdimensensi i dadan n kekegungunaaaannynnyaa ditampilkan dala Tabel '&.
ditampilkan dala Tabel '&.
T
Tabel 13. abel 13. Perintah-Perintah Grafik Dalam 2 DimensiPerintah-Perintah Grafik Dalam 2 Dimensi
P
Peerriinnttaah h GGrraaffkk KKeegguunnaaaann
plot
plot %% MembMembuat grauat grafk data dfk data dengaengan skaln skala linea linear untuar untuk keduk kedua sumbua sumbu
polar
polar %% MembMembuat guat grafk rafk data data daladalam km koordoordinat inat polapolarr
plotyy
plotyy %% MembMembuat gruat grafk daafk data denta dengan dugan dua sumbu y da sumbu y di kiri di kiri dan kaan kanannan
semilogx
semilogx %% MembMembuat gruat grafk daafk data denta dengan skgan skala loala logarigaritmik patmik pada sumda sumbu 0bu 0
semilogy
semilogy %% MembMembuat gruat grafk daafk data denta dengan skgan skala loala logarigaritmik patmik pada sumda sumbu ybu y
loglog
loglog %% MembMembuat grauat grafk data dfk data dengaengan skaln skala logara logaritmiitmik pada kk pada kedua suedua sumbumbu
bar
bar %% MembMembuat gruat grafk dafk data data dengaengan bentn bentuk kuk kotak 1otak 1batabatang2ng2
area
area %% MembMembuat gruat grafk dafk data data dengaengan arsn arsir di bir di ba3ah a3ah grafgrafkk
pie
pie %% MemMembuabuat gt grarafk fk linlingkgkararanan
hist
hist %% MemMembuabuat t grgrafk afk hishistogtogramram
stem
stem %% MembMembuat gruat grafk dafk data data diskriskrit dait dalam belam bentuk tntuk tangkangkaiai
stairs
stairs %% MembMembuat gruat grafk daafk data dista diskrit dkrit dalam balam bentuentuk undak undak4tank4tanggagga
contour
contour %% MeMembmbuauat grt grafafk kk konontuturr
quiver
quiver %% MeMembmbuauat t gagambmbar ar ararah ah vevektktor or papada da susuatatu u titititik k dadalalam m duduaa dimensi
dimensi
b.
b. Langkah-Langkah Pembuatan Grafk 2 DimensiLangkah-Langkah Pembuatan Grafk 2 Dimensi
Modul "emrograman +omputer Oleh 5arsono
Modul "emrograman +omputer Oleh 5arsono &6&6
KOMPETE!I DA!AR KOMPETE!I DA!AR
Mahasis3a mampu membuat program grafk dengan perintah$perintah grafk # Mahasis3a mampu membuat program grafk dengan perintah$perintah grafk #
dimensi dimensi
Mahasis3a mampu membuat program grafk dengan perintah$perintah grafk & Mahasis3a mampu membuat program grafk dengan perintah$perintah grafk &
dimensi dimensi
Mahasis3a mampu membuat program grafk untuk menyelesaiakan persoalan fsis Mahasis3a mampu membuat program grafk untuk menyelesaiakan persoalan fsis
dengan perintah$per
7
Garis besar mengenai langkah$langkah pembuatan program grafk # dimensi dijelaskan dalam Tabel ' .
Tabel '. angkah$langkah "embuatan Grafk # ,imensi
Langkah-Langkah "#nt#h Perintah
' /iapkan data x = 0:0.2:12; y1 = bessel1,x!; y2 = bessel2,x!; y3 = bessel3,x!;
# "ilih fgure dan letak plot dalam fgure
figure1! subplot2,2,1!
& "anggil perintah grafk # dimensi
h = plotx,y1,x,y2,x,y3!;
Atur garis dan karakternya
seth,"#ine$i%th",2,&"#ine'tyle"(,&"))";":";")."(! seth,&"*olor"(,&"r";"g";"b"(!
8 Atur batas sumbu axis+0 12 )0. 1-! gri% on
9 !eri keterangan grafk dengan nama sumbu: legend: judul dan teks
xlabel"ime"! ylabel"/mplitu%e"!
legen%h,"irst","'econ%","hir%"! title"essel unctions"!
+y,ix- = miny1!;
textxix!,y,"irst in rightarro4",... "5ori6ontal/lignment","right"!
c. "#nt#h Pembuatan Grafk 2 Dimensi
Perintah plot Listing program : x = 0:0.2:12; y1 = bessel1,x!; y2 = bessel2,x!; y3 = bessel3,x!; y7 = bessel7,x!; 6=sinx!; figure1! subplot1,2,1! h=figure1!; h = plotx,y1,x,6!; seth,"#ine$i%th",2.,&"#ine'tyle"(,&")";"))"(! seth,&"*olor"(,&"r";"8"(! axis+0 12 )1. 1.-! gri% on xlabel"$a8tu"! ylabel"/mplitu%o"! legen%h,"essel 1","'inus"!
title"ungsi essel1 %an 'inus "! +y,ix- = miny1!;
textxix!,y,"9ilai inimum essel 1rightarro4",... "5ori6ontal/lignment","right","fontsi6e",! subplot1,2,2! h = plotx,y1,x,6!; seth,"#ine$i%th",2.,&"#ine'tyle"(,&")";")."(! seth,&"*olor"(,&"b";"8"(! axis+0 12 )1. 1.-! gri% on xlabel"$a8tu"! ylabel"/mplitu%o"! legen%h,"essel 2","'inus"!
title"ungsi essel 2 %an 'inus"! +y,ix- = miny1!;
7
textxix!,y,"9ilai inimum essel 2 rightarro4",... "5ori6ontal/lignment","right","fontsi6e",! Keluaran Program Perintah polar Perintah plotyy Perintah semilogx Perintah loglog Perintah bar
Modul "emrograman +omputer Oleh 5arsono &9
10-1 100 101 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 sumbu x s u m b u y Grafik Semilogx x=0:0.1:; y1=x.<1x.>2!; y2=exp0.1?x!.?cosx!; plotyyx,y1,x,y 2!; gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 Alotyy","fontsi6e",1,"color","b"! x=0:0.1:10; y=exp)x!; semilogxx,y,"b"!; gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 'emilogx","fontsi6e",1,"color","b"! 0.2 0.4 0.6 0.8 1 30 210 60 240 90 270 120 300 150 330 180 0 Grafik Polar clear clc su%ut=0:pi<100:2?pi; r=sin2?su%ut!; polarsu%ut,r,"bo"!; title"@rafi8 Aolar","fontsi6e",1,"color","b"! 0 1 2 3 4 5 6 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 sumbu x s u m b u y Grafik Ployy 0 1 2 3 4 5 6-1.5 -1 -0.5 0 0.5 1 1.5 2 10-1 100 101 10-5 10-4 10-3 10-2 10-1 100 sumbu x s u m b u y Grafik loglog x=0:0.1:10; y=exp)x!; loglogx,y,"b"!; gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 loglog","fontsi6e",1,"color","b"! 0.5 1 1.5 2 2.5 3 3.5 4 4.5 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 s u m b u y Grafik bar 0 2 4 6 8 10 12 -1.5 -1 -0.5 0 0.5 1 1.5 !aku " m # l i u $ o
%u&gsi 'essel1 $a& Si&us
(ilai )i&imum 'essel 1
'essel 1 Si&us 0 2 4 6 8 10 12 -1.5 -1 -0.5 0 0.5 1 1.5 !aku " m # l i u $ o
%u&gsi 'essel 2 $a& Si&us
(ilai )i&imum 'essel 2
'essel 2 Si&us
7
Perintah area Perintah pie Perintah stem Perintah stairs Perintah HistModul "emrograman +omputer Oleh 5arsono &;
x=1:0.:7; y=exp)x!; barx,y,"b"!; gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 bar","fontsi6e",1,"color","b"! 0 5 10 15 20 25 30 35 40 45 50 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 sumbu x s u m b u y Grafik area x=0:0.1:0; y=exp)0.1?x!.?cosx!; areax,y!; gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 area","fontsi6e",1,"color","b"! 15* 23* 8* 15* 38* Grafik #ie x=+20 30 10 20 0-; lps=maxx!; piex,x==lps!; gri% on title"@rafi8 pie","fontsi6e",1,"color","b"! 0 2 4 6 8 10 12 14 16 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 sumbu x s u m b u y Grafik sem x=0:pi<10:?pi; y=sinx!.?exp)0.1?x!; stemx,y! gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 stem","fontsi6e",1,"color","b"! 0 2 4 6 8 10 12 14 16 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 sumbu x s u m b u y Grafik sairs x=0:pi<10:?pi; y=sinx!.?exp)0.1?x!; stairsx,y! gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 stairs","fontsi6e",1,"color","b"! B = ran%n10000,3!; histB! gri% on xlabel"sumbu x","fontsi6e",17,"color","b"! ylabel"sumbu y","fontsi6e",17,"color","b"! title"@rafi8 5ist","fontsi6e",1,"color","b"! -5 -4 -3 -2 -1 0 1 2 3 4 0 500 1000 1500 2000 2500 3000 3500 s u m b u y Grafik +is
7
Peritah contour
Perintah quiver
2$ GRAFIK % DIME!I
a. Perintah-Perintah Grafk % Dimensi
<ontoh perintah$perintah grafk dalam & dimensi dan kegunaannya ditampilkan dala Tabel '.
Tabel 14. Perintah-Perintah Grafik Dalam 2 Dimensi
Perintah Grafk Kegunaan
Alot3 % Membuat grafk data dengan skala linear untuk ketiga sumbu
mesh % Membuat grafk jala dalam & dimensi
surf % Membuat grafk permukaan dalam & dimensi
*ontour3 % Membuat grafk kontur dalam & dimensi
bar3 % Membuat grafk kotak1batang2 & dimensi
'tem3 % Membuat grafk berbentu tangkai dalam & dimensi
b. Langkah-Langkah Pembuatan Grafk % Dimensi
Garis besar langkah$langkah pembuatan grafk & dimensi dijelaskan dalam Tabel '8. Tabel '8. angkah$langkah "embuatan Grafk & ,imensi
Langkah-Langkah "#nt#h Perintah
'. /iapkan data C = pea8s20!;
#. "ilih fgure dan letak plot dalam
fgure
figure1! subplot2,1,2!
&. "anggil perintah grafk & dimensi h = surfC!;
Modul "emrograman +omputer Oleh 5arsono =
5 10 15 20 25 30 35 40 5 10 15 20 25 30 35 40 5 10 15 20 25 30 35 40 5 10 15 20 25 30 35 40 6=pea8s70!; subplot1,2,1!,contour6,20! subplot1,2,2!,contourf6,20! 0 1 2 3 4 5 6 0 1 2 3 4 5 6 D=0:pi<10:2?pi;; B=D; +D B-=meshgri%D,B!; C=sinD!sinB!!; contourfD,B,C,20! colormaphsv! +E,F- = gra%ientC,.1!; hol% on quiverD,B,E,F! hol% off
7
.a Atur 3arna gambar dan
bayangannya
colormap hot sha%ing interp
seth,"G%ge*olor","8"!
.b Tambahkan eek pencahayaan
1lighting2 light"Aosition",+)2,2,20-! lighting phong material+0.7,0.,0.,30-! seth,"ace*olor",+0. 0. 0-,... "ac8ace#ighting","lit"!
8. Atur sudut pandang 1vie3point2 vie4+30,2-!
setgca,"*ameraFie4/ngleo%e","anual"!
6. Atur batas sumbu dan ketebalannya axis+ 1 1 )H H-!
setgca,"Cic8#abel","9egativeIIAositive"!
7. Atur aspek perbandingan setgca,"Alotox/spectJatio",+2. 2. 1-!
9 !eri keterangan grafk dengan nama
sumbu: legend: dan judul
xlabel"D /xis"! ylabel"B /xis"!
6label"unction Falue"! title"Aea8s"!
"atatan % langkah .a sampai 9 merupakan langkah untuk melengkapi gambar yang bersiat opsional 1boleh dilakukan bolah tidak2
&$ "#nt#h Pembuatan Grafk % Dimensi Perintah plot3
Perintah mesh
Perintah surf
Modul "emrograman +omputer Oleh 5arsono '
-40 -20 0 20 40 -40 -20 0 20 40 -40 -20 0 20 40 sumbu x G,"% /(G"( P,("+ #lo3 sumbu y s u m b u 2 t = )10?pi:pi<100:10?pi; x = t.?cost!; y = t.?sint!; h = plot3x,y,t!; seth,"#ine$i%th",2.! vie4+)30 30-!
title"@J/KL MG9@/9 AGJK9/5 plot3"! h = getgca,"itle"!; seth,"ont'i6e",17! xlabel" sumbu x"! h = getgca,"xlabel"!; seth,"ont'i6e",12! ylabel"sumbu y"! h = getgca,"ylabel"!; seth,"ont'i6e",12! 6label"sumbu 6"! h = getgca,"6label"!; seth,"ont'i6e",12! gri% on +D,B- = meshgri%)H:.:H!; J = sqrtD.>2 B.>2! eps; C = sinJ!.<J; h=meshC!; seth,"G%ge*olor","8","line4i%th",1.! +D,B- = meshgri%)H:.:H!; J = sqrtD.>2 B.>2! eps; C = sinJ!.<J; h=surfC!; seth,"ace*olor","interp",... "G%ge*olor","none",... "ace#ighting","phong"! vie4)7,30! camlight left
7
Perintah contour3Perintah bar3
Perintah stem3
Modul "emrograman +omputer Oleh 5arsono #
5 10 15 20 5 10 15 20 -0.2 -0.1 0 0.1 0.2 +D,B- = meshgri%)2:.2:2, )2:.2:2!; C = sinD!.? sinB!.? ... exp)D.?D ) B.?B!; contour3C,0!; colormap Net D=2001:1:200 B=+1 2 3;7 7;2 3 7;3 ;1 2 7;2 3 2 -; bar3D,B! vie4+0 20-! xlabel"Maerah"! ylabel"ahun"!
6label"Aen%apatan %alam trilyun rupiah!"! setgca,"Dic8",+1 2 3-! -1.5 -1 -0.5 0 0.5 1 1.5 -1.5 -1 -0.5 0 0.5 1 0 1 2 3 4 Sumbu x Grafik Sem3 Sumbuy S u m b u 2 th = 0:pi<0:2?pi; x = sinth!; y = costh!; 6=1100?x.>.?y.>7; 66=0?th; stem3x,y,6,"b%"! axis+)1. 1. )1. 1.2 0 7.-! hol% on plot3x,y,66,"b",x,y,6,"r","line4i%th",2! vie4+)0 H-! xlabel"'umbu x"! ylabel"'umbu y"! 6label"'umbu 6"! title"@rafi8 'tem3","fontsi6e",1!