• Tidak ada hasil yang ditemukan

Membuat Visualisasi Data di Matlab

Dalam dokumen Cepat Mahir Matlab (Halaman 75-108)

Pada bab sebelumnya telah digunakan beberapa fasilitas grafis di Matlab. Dalam bab ini akan dibahas berbagai fasilitas grafis Matlab secara lebih jelas. Matlab menyediakan

 berbagai fungsi untuk menampilkan data secara dua dimensi maupun tiga dimensi. Pada kasus dimana anda membuat grafik dalam tiga dimensi, anda dapat menggambar 

 permukaan dan menempatkan binkai pada grafik tersebut. Warna digunakan untuk  mewakili dimensi keempat.

Grafik Pertama

Seperti telah digunakan pada bab sebelumnya, perintah plot sering digunakan untuk  menggambarkan grafik dua dimensi. Perintah plot menggambarkan data dalam array  pada sumbu yang bersesuaian dan menghubungkan titik-titik tersebut dengan garis lurus.

Sebagai grafik pertama anda pada bab ini akan dibuat visualisasi dari  y = sin( )

 x dengan

⎡ π π⎤

, nilai x

100,10

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com x=pi/100:pi/100:10*pi; y=sin(x)./x; plot(x,y) grid on 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 0 5 10 15 20 25 30 35

Fungsi dasar untuk membuat grafik  dua dimensi di Matlab adalah  perintah

plot ,

 perintah ini didasarkan dari jumlah argumen variabel input . Untuk  keterangan lebih jelas

mengenai fungsi plot ketik  help plot

di command window.

Memberi Keterangan Pada

Grafik  Contoh : Pada contoh dibawah ini dibuat grafik  dari fungsi sampai 2 menggun akan  jumlah data yang  berbeda. % Script file graph1. % Grafik fungsi y = x/ (1+x^ 2) k=0;

for n=1:2:7 n10 = 10*n; x = linspace (-2,2,n10) ; y = x./ (1+x.^2) ; k=k+1; subplot( 2,2,k) plot(x,y ,'r') title([' Plot Fungsi dengan banyak data n  f   x ( ) =1 x +  x2 , dengan nilai x dari -2

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com = ',num2str(n10)]) axis([-2,2,-.8,.8]) xlabel('x') ylabel('y') grid end

Functionsubplot digunakan untuk membuat suatu figure dapat memuat lebih dari satu gambar. Perintah sublot didefinisikan sebagai :

subplot(n,m,i)

Perintah tersebut membagi suatu figure menjadi suatu matriks m x n area grafik dan i  berfungsi sebagai indeks penomoran gambar. Subplot dinomori dari kiri ke kanan dimulai

dari baris teratas.

Function title digunakan untuk memberi judul pada gambar. Input dari perintah title  berupa string. Syntax title sebagai berikut :

title(‘string’)

Functionxlabel digunakan untuk memberi label sumbu pada sumbu x. Input dari perintah xlabel berupa string. Syntax xlabel sebagai berikut :

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Functionylabel digunakan untuk memberi label sumbu y. Input dari perintah ylabel  berupa string. Syntax ylabel sebagai berikut :

ylabel(‘string’)

Function axisdigunakan untuk mengatur nilai minimum dan maksimum dari sumbu x dan sumbu y , function axis didefinisikan sebagai :

axis([ xmin xmax ymin ymax ])

Functiongrid digunakan untuk memberi grid pada gambar kita

Membuat 2 Grafik Dalam 1 Gambar Contoh :

2 2

Pada contoh 2 ini akan dibuat plot dari dua persamaan elips : x( − 3)+( y+ 2)=1 dan

36 81

2 2

( x − 7)+( y − 8)=1 , menggunakan perintah plot.

4 36

% Script file graph2 % Grafik dari dua ellips

% x(t) = 3 + 6cos(t), y(t) = -2 + 9sin(t) % dan

% x(t) = 7 + 2cos(t), y(t) = 8 + 6sin(t). t = 0:pi/100:2*pi; x1 = 3 + 6*cos(t); y1 = -2 + 9*sin(t); x2 = 7 + 2*cos(t); y2 = 8 + 6*sin(t); h1 = plot(x1,y1,'r',x2,y2,'b'); set(h1,'LineWidth',1.25) axis('square') xlabel('x') h = get(gca,'xlabel'); set(h,'FontSize',12) set(gca,'XTick',-4:10) ylabel('y') h = get(gca,'ylabel'); set(h,'FontSize',12) set(gca,'YTick',-12:2:14)

title('Graphs of 3)^2/36+(y+2)^2/81 = 1 and (x-7)^2/4+(y-8)^2/36 =1.')

h = get(gca,'Title'); set(h,'FontSize',12) grid

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Pada program graph3.m kita merubah koordinat x dan y elips dari koordinat rectangular  ke dalam koordinat parametrik .

Pada program tersebut menunjukkan bahwa anda dapat menggambar lebih dari satu set data pada saat yang bersamaan hanya dengan memberikan sepasang argumen tambahan  pada plot. Pada contoh diatas dibuat plot y1 terhadap x1 dan y2 terhadap x2. Plot secara

otomatis menggambarkan kurva yang kedua dengan warna yang berbeda.

Pada contoh diatas dibuat pengesetan warna , huruf dan garis dari grafik plot anda dengan menggunakan perintah h1=plot( ……,'b') set(h1,'LineWidth',1.25)

axis('square') xlabel('x') .

Anda dapat memilih sendiri style penandaan, warna dan bentuk garis dengan memberikan argumen ketiga pada fungsi plot untuk setiap pasangan array data. Argumen tambahan ini adalah suatu karakter string yang terdiri dari satu atau lebih karakter dari tabel di bawah ini: Simbol b r g c m Warna Biru Merah Hijau Cyan Magenta Simbol . o x + *

Penandaan Titik  Lingkaran Tanda x Tanda plus Tanda Simbol -: -. --Style Garis Gari lurus Garis titk-titk  Garis terpotong &

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

y Kuning s  bintang titik 

w Hit am Put ih d p h Bujursa ngkar  Diamo n Pentagr  am Heksag ram Garis terpoto ng- potong Sebagai contoh yang menggunakan style, garis dan  penandaan pada  program graph2 adalah plot(x,y,'b:p') Perintah tersebut memerintahkan Matlab membuat  plot grafik dimana titik grafik ditandai dengan

 pentagram, garis mempunyai style garis titik-titik dan  berwarna biru.

Perintah

axis('square')

memerintahkan Matlab membuat grafik yang aktif  menjadi bujur  sangkar bukan  persegipanjang. Pada program diatas terdapat  perintah yang dimulai dengan h1=plot …. , variabel h1 menyimpan informasi mengenai grafik  yang anda buat

yang disebut handle  graphics.

Perintah set pada baris selanjutnya digunakan untuk  memanipulasi grafik.Harap diingat

 bahwa perintah ini mempunyai variabel input h1. Perintah Matlab lain yang  penting yaitu perintah get

.Perintah tersebut berdasar   pada

 parameter input yang diberi nama gca =  get current  axis .Lalu untuk   memanipulasi garis

yang diinginkan digunakan  perintah set seperti bisa dilihat  pada program graph3.

Menggunakan Perintah

Hold

Anda dapat menambahkan garis pada grafik yang sudah ada dengan perintah hold. Jika anda mengeset hold on , maka Matlab tidak akan mengganti sumbu-sumbu yang sudah

ada jika perintah plot yang  baru diberikan. Matlab akan langsung menambahkan kurva yang baru pada grafik yang telah ada. Namun apabila data yang baru tidak mencukupi untuk batasan-batasan sumbu yang ada maka akan dilakukan penskalaan ulang. Perintah

hold off  akan membuat  jendela figure membuat gambar yang baru. Perintah hold

tanpa argumen berfungsi sebagai toggle..Sebagai contoh Contoh : % Sc ri pt gr ap h3 % Gr af ik da ri du a el li ps % x( t) = 3 + 6c os (t ), y( t) = -2 + 9s in (t ) % da n % x( t) = 7 + 2c os (t ), y( t) = 8 + 6s in (t ). % Me ng gu na ka n pe rintah hold t = 0:pi/100:2*pi;

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com x1 = 3 + 6*cos(t); y1 = -2 + 9*sin(t); x2 = 7 + 2*cos(t); y2 = 8 + 6*sin(t); plot(x1,y1,'r') ,hold on plot(x2,y2,'b') Langkah-Langkah Untuk 

Memplot Data Anda

Untuk membuat suatu grafik  dasar di Matlab yang dapat merepresentasikan data yang

anda buat disimpulkan dalam enam tahap dalam membuat grafik pada tabel dibawah ini. Dalam langkah dibawah ini, langkah 1 sampai tiga sebenarnya sudah cukup untuk 

merepresentasikan data dalam sebuah grafik, langkah selanjutnya untuk membuat tampilan dari grafik lebih menarik.

Matlab mempunyai banyak function yang khusus untuk grafik 2 dimensi. Sebagian dari fungsi tersebut adalahfill, polar, bar, barh, pie, hist, compass,

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Function fill

Pada contoh dibawah ini digunakan  perintah fill untuk membuat suatu

obyek.

% Script graph4

% Menggunakan function fill n = -6:6;

x = sin(n*pi/6); y = cos(n*pi/6); fill(x, y, 'r') axis('square')

title('Graph of the n-gone') text(-0.45,0,'What is a name of this object ?')

Function polar

Grafik pada koordinat polar dapat dibuat dengan menggunakan perintah

polar(t,r,s), dengan t adalah sudut vector dalm radian, r adalah jari-jari vaktor dan s adalah karakter string yang bersifat opsional berfungsi untuk mendeskripsikan warna ,

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com % Script graph4 % membuat grafik x(t)=sin(2t)cos(2t) t=linspace(0,2*pi); r=sin(2*t).*cos(2*t); polar(t,r) subplot(2,2,1) polar(t,r) title('Grafikpolar x(t)=sin(2t)cos(2t)') subplot(2,2,2) compass(t,r) title('PlotCompass x(t)=sin(2t)cos(2t)') subplot(2,2,3) feather(t,r) title('Plotfeather x(t)=sin(2t)cos(2t)') subplot(2,2,4) rose(r) title('HistogramSudut x(t)=sin(2t)cos(2t)')

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Functioncompass danfeather digunakan untuk menampilkan sudut dan besarnya elemen-elemen kompleks dalam z sebagai anak panah berasal dari pusat koordinat. Untuk keterangan lebih detail coba gunakan perintah help feather , help compass dan help rose.

Function ginput

Perintah ginput merupakan cara untuk memilih titik-titik dari grafik aktif dengan bantuan mouse.[x,y]=ginput(n) maksudnya mengambil n titik dari sumbu aktif dan

mengisikan koordinatnya dalam array kolom x dan y . Jika n tidak terisi , Matlab akan mengambil jumlah titik secara tak terbatas sampai tombol Return atauEnterditekan. Sebagai contoh perhatikan program graph5 berikut :

% Script graph5

% Loop, mengambil titik-titik pada grafik.

disp('Klik kiri untuk menentukan titik-titk yang diinginkan.') disp('Klik kanan untuk menentukan titik terakhir')

but = 1;n=0; while but == 1 [xi,yi,but] = ginput(1); plot(xi,yi,'ro') n = n+1; xy(:,n) = [xi;yi]; end

% Interpolate with a spline curve and finer spacing. t = 1:n;

ts = 1: 0.1: n;

xys = spline(t,xy,ts);

% Plot the interpolated curve. plot(xys(1,:),xys(2,:),'b-'); hold off

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Function quiver

Gambar vektor yang mengambarkan arah dan besarnya dapat divisualisasikan dengan menggunakan fungsi quiver. Misal kita mempunyai data laju perpindahan akibat

 pergerakan lempeng disekitar subduction zone. Data tersebut mempunyai nama

subdcSMTdenseVec.dat, dan isi dari data tersebut adalah koordinat riel bumi berupa longitude (bujur), latitude (lintang), besar  vektor dan kecepatan vektor.

Juga diberikan data kepulauan Indonesia di indonesia.dat. Anda akan mencoba

memvisualisasikan kedua data tersebut. Dibuat script di matlab sebagai berikut :

% plot_vector.mat

load subdcSMTdenseVec.dat load indonesia.dat

data=subdcSMTdenseVec; % pendefinisian data x=data(:,1); y=data(:,2); U=data(:,3); V=data(:,3); quiver(x,y,U,V,'r'),hold on plot(indonesia(:,1),indonesia(:,2)) axis([min(x) max(x) min(y) max(y)])

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com Pada program plot_vektor.m,  pertama data didefinisikan

dengan menggunakan fungsi load. Lalu data tersebut disimpan di variable x, y, U dan V yang merupakan data

longitude (bujur), latitude (lintang), besar vektor dan kecepatan vector.

Perintah quiver(x,y,U,V,'r'), membuat gambar besar dan arah vector di koordinat longitude dan latitude dengan warna merah.

Perintahplot(indonesia(:,1),indonesia(:,2)), memplot semua data pada kolom satu dan dua dari data indonesia.dat yang tersimpan di variable indonesia.

Perintah axis([min(x) max(x) min(y) max(y)], membuat batas gambar berdasarkan daerah di data vector.

Grafik Batang dan Area

Grafik batang dapat dibuat dengan menggunakan perintah bar , bar3 , barh. Function bar  dan area menampilkan data vektor dan matriks. Function jenis ini berguna untuk 

membandingkan beberapa data yang berbeda. Dibawah dijelaskan keterangan mengenai  perintah-perintah tersebut.

Sebagai contoh dibuat matriks Y dan digunakan function bar dan bar3 untuk matriks Y

Y = [5 2 1 8 7 3 9 8 6 5 5 5 4 3 2];

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com bar(Y) 9 8 7 6 5 4 3 2 1 0 1 2 3 bar3(Y) 4 5

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Dapat dijelaskan dari grafik diatas sebagai berikut :

Setelah function bar selanjutnya anda coba gunakan perintah area untuk  merepresentasikan matriks Y.

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

area(Y)

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Function grafik 2 D yang sering digunakan Nama Function Keterangan loglo g semi logx semil ogy pie(a, b) hist( y) hist( y,n) stem (z) Fun ctio n ima gesc

Berfungsi sama dengan plot , tetapi skala yang digunakan untuk 

kedua sumbu adalah skala logaritma Berfungsi sama dengan plot , tetapi sumbu x menggunakan skala

logaritma dan sumbu y menggunakan skala linear 

Berfungsi sama dengan plot , tetapi sumbu y menggunakan skala

logaritma dan sumbu x menggunakan skala linear 

Berfungsi membuat grafik lingkaran dengan a adalah suatu array

dan b adalah logika opsional yang mendeskripsikan suatu jaring

atau jaring yang dilepaskan dari grafik  lingkaran.

Berfungsi menggambar 10 batang histogram untuk data dalam array

y

Menggambar histogram sebanyak n , dengan n adalah bilangan

skalar 

Membuat suatu grafik dari titik-titik data dalam array z

dihubungkan dengan sumbu mendatar  oleh suatu garis.

Sebuah gambar dapat diwakili oleh sebuah matriks. Oleh karena itu anda dapat

menampilkan data yang berbentuk matriks ke dalam sebuahimage dengan menggunakan

 perintah imagesc.syntax dari imagesc yaitu sbb:

imagesc(A) , berfungsi menampilkan matriks A dalam sebuah image

imagesc(x,y,A) , berfungsi menampilkan matriks A dengan skala sumbu x dan y

dimana x dan y adalah array.

% Script graph6

% Menggunakan function imagesc % membuat data sebuah sumur ID,x,y ID=[1 2 3 4 5 6];

x=[10 20 40 50 70 20]; y=[10 10 30 20 50 70];

% dicari jarak tiap titik terhadap titik lainnya

% Digunakan rumus jarak d=sqrt((x2-x1)^2+(y2-y1)^2)

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com n=length(x); for i=1:n for j=1:n d(i,j)=sqrt((x(j)-x(i))^2+(y(j)-y(i))^2); end end % Menampilkan data subplot(2,1,1) imagesc(d)

title('Image dari matriks d tanpa menggunakan skala') colorbar('vert')

subplot(2,1,2) imagesc(ID,ID,d)

title('Image dari matriks d menggunakan skala') colorbar('vert')

Image dari matriks d tanpa menggunakan skala 1 60 2 3 4 5 6 1 2 3 4 5 6 40 20 0 1 2 3 4 5 6 1 2

Image dari matriks d menggunakan skala 3 4 5 6 60 40 20 0

Pada program graph6 dicari jarak dari satu titik terhadap titik lainnya lalu jarak tersebut ditampilkan dalam bentuk image.

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Contoh :

Script dibawah ini membuat arah sumbu y menjadi terbalik. % Script flipy.m

% FLIPY: script to flip the direction of the y axis %

% just type "flipy" at the matlab prompt state=get(gca,'ydir'); if(strcmp(state,'normal')) set(gca,'ydir','reverse') else set(gca,'ydir','normal') end

Pada scipt flipy diatas pertama digunakan perintah state=get(gca,'ydir'), perintah ini untuk mendapatkan informasi dari sumbu yang ditentukan.Setelah itu digunakan

if(strcmp(state,'normal')), untuk mngetahui apakah arah sumbu yang ditentukan tadi

masih normal tau tidak. Jika arah sumbu masih normal maka arah sumbu tersebut dibalik.

Grafik 3 Dimensi Function plot3

Dalam plot 3 Dimensi terdapat juga perintah plot3 untuk bekerja dalam tiga

dimensi.Format yang digunakan sama dengan perintah plot dalam dua dimensi, kecuali data yang digunakan adalah tiga satuan, bukan sepasang. Format umum dari plot3 adalah plot3(x1,y1,z1,S1,x2,y2,z2,S2,…)dengan xn dan yn adalah array atau matriks sedangkan Sn adalah karakter string opsional yang mengatur warna, simbol, tanda atau style garis.

Contoh :

Akan diplot persamaanr(t) = < t cos(t), t sin(t), t >, dengan nilai 10

π

≤ ≤ 10

π

, maka : % Script file graph7.

% Kurva r(t) = < t*cos(t), t*sin(t), t >. t = -10*pi:pi/100:10*pi;

x = t.*cos(t); y = t.*sin(t); h = plot3(x,y,t);

set(h,'LineWidth',1.25)

title('Curve u(t) = < t*cos(t), t*sin(t), t >') h = get(gca,'Title');

set(h,'FontSize',12) xlabel('x')

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com h = get(gca,'xlabel'); set(h,'FontSize',12) ylabel('y') h = get(gca,'ylabel'); 28 set(h,'FontSize',12) zlabel('z') h = get(gca,'zlabel'); set(h,'FontSize',12) grid

Perhatikan dalam contoh diatas terdapat fungsi zlabel yang serupa dengan fungsi xlabel

dan ylabel di grafik dua dimensi.Dengan cara yang sama  perintah axis mempunyai

 bentuk tiga dimensi.Pada dasarnya konsep manipulasi grafik pada dua dimensi juga  berlaku pada grafik tiga dimensi.

Grafik Jala

Matlab mendefinisikan suatu permukaan jala dengan koordinat z sebuah titik diatas grid segiempat pada bidang x-y. Perintah mesh digunakan unutk menggambarkan permukaan

3 dimensi.Sebelum anda menggunakan perintah ini sebaiknya , anda pelajar dulu perintah meshgrid . Perintah meshgrid didefinisikan sebagai berikut : [X,Y]=meshgrid(x,y) menciptakan suatu matriks X dengan baris-barisnya adalah duplikat dari array x dan suatu matriks Y dengan kolomnya adalah duplikat dari array y . Berikut ini contoh  penggunaan function mesh danmeshgrid.

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

x = [0 1 2]; y = [10 12 14];

Perintah meshgrid akan membuat array x dan y menjadi dua matirks

[xi, yi] = meshgrid(x,y)

xi = 0 1 2 0 1 2 0 1 2 yi = 10 10 10 12 12 12 14 14 14

Bisa dilihat bahwa baris matriks xi adalah duplikat dari array x dan kolom matriks yi adalah duplikat dari array y.

Pada contoh ini akan diplot permukaan parabola  z = y2 x2dengan nilai 1 − ≤ ≤1  y 1 .

x = -1:0.05:1; y = x;

[xi, yi] = meshgrid(x,y); zi = (yi.^2) – (xi.^2); mesh(xi, yi, zi) axis off 

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Untuk memplot grafik mesh dengan konturnya digunakan perintahmesc

meshc(xi, yi, zi) axis off 

Dalam contoh ini mesh menggambarkan nilai-nilai elemen matriks pada titik  (ij, ,ijij)dalam ruang tiga dimensi, mesh dapat juga menggunakan matriks tunggal

sebagai argumen : mesh(Z) mengubah skala dari sumbu x dan sumbu y sebagai indeks dari matriks Z.

Matlab juga menyediakan function surf yang mempunyai susunan argumen sama dengan mesh. Berikut contoh penggunaan function surf.

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Memanipulasi Grafik 

Anda dapat memanipulasi grafik supaya terlihat lebih indah, anda dapat mengeset sudut tampilan, memilih warna untuk grafik anda dan memuat shading. Sebagai contoh

 perhatikan program graph8.m dibawah ini :

% Script graph5.

% Plot permukaan zi = yi.^2 + xi.^2 - 25 x = -1:.05:1; y = x; [xi,yi] = meshgrid(x,y); zi = yi.^2 + xi.^2 - 25; figure(1) surfc(xi,yi,zi) colormap copper shading interp view([25,15,20]) grid off

title('Hyperbolic paraboloid z = yi.^2 + xi.^2 - 25') h = get(gca,'Title'); set(h,'FontSize',12) xlabel('x') h = get(gca,'xlabel'); set(h,'FontSize',12) ylabel('y') h = get(gca,'ylabel'); set(h,'FontSize',12) zlabel('z') h = get(gca,'zlabel'); set(h,'FontSize',12) figure(2)

contourf(zi), hold on, shading flat [c,h] = contour(zi,'k-'); clabel(c,h)

title('The level curves of z = y^2 - x^2.') h = get(gca,'Title'); set(h,'FontSize',12) xlabel('x') h = get(gca,'xlabel'); set(h,'FontSize',12) ylabel('y') h = get(gca,'ylabel'); set(h,'FontSize',12)

Kuliah Berseri IlmuKomputer.Com Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Perintah view mempunyai bentuk lain yang mungkin dalam keadaan-keadaan tertentu Perintah view mempunyai bentuk lain yang mungkin dalam keadaan-keadaan tertentu akan lebih berguna,

akan lebih berguna, view([ x y z ])view([ x y z ])menempatkan sudut pandang anda pada suatu menempatkan sudut pandang anda pada suatu vektor vektor  yang mempunyai koordinat Kartesius (x,y,z) dalam ruang tiga dimensi.

yang mempunyai koordinat Kartesius (x,y,z) dalam ruang tiga dimensi.

Dalam perinath shading, anda dapat memlih tiga cara shading untuk grafik mesh, surf, Dalam perinath shading, anda dapat memlih tiga cara shading untuk grafik mesh, surf,

yaitu : yaitu :

•• shading flatshading flat, membuat setiap bagian garis dari jala atau jejak , membuat setiap bagian garis dari jala atau jejak permukaan akanpermukaan akan memiliki warna tetap.

memiliki warna tetap.

•• shading facetedshading faceted, membuat shading datar dengan , membuat shading datar dengan garis-garis jala berwarna hitamgaris-garis jala berwarna hitam dan bertumpuk-tumpuk.

dan bertumpuk-tumpuk.

Kuliah Berseri IlmuKomputer.Com Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com

Peri

Perintah ntah colcolormormap(Map(M) ) menmenempempatkatkan an mtrmtriks iks MM  pada peta warna untuk digunakan oleh

 pada peta warna untuk digunakan oleh

ggaammbbaar r yyaanng g aakkttiiff. . SSeebbaaggaai i ccoonnttooh h :: col

colormaormap(cop(cool) ol) akaakan n menmenempempatkatkan an petpeta a warnwarnaa cool.

cool. D

Di i babawwah ah inini i bbebebeerarapa pa ffunungsgsi i MMaatltlab ab uuntntuuk k  menghasilkan

menghasilkancolormapcolormapyang didefinisikanyang didefinisikan oleh Matlab.

oleh Matlab.

Contoh Penyelesaian Masalah Contoh Penyelesaian Masalah

Data subdcSMTdenseV

Data subdcSMTdenseVec.dat merupakan ec.dat merupakan laju perpindahan akibat laju perpindahan akibat pergerakan lempengpergerakan lempeng disekitar subduction zone. Arah vektor merupakan resultan Ux dan Uy. X dan Y disekitar subduction zone. Arah vektor merupakan resultan Ux dan Uy. X dan Y merupakan koordinat riel bumi berupa longitude (bujur) dan latitude (lintang). Data merupakan koordinat riel bumi berupa longitude (bujur) dan latitude (lintang). Data

indonesia.dat merupakan data peta indonesia.. Estimasi nilai dilatasi pada daerah tersebut. indonesia.dat merupakan data peta indonesia.. Estimasi nilai dilatasi pada daerah tersebut. Strain 2-D bisa didefinisikan sebagai berikut:

Strain 2-D bisa didefinisikan sebagai berikut:

eeijij= 0.5= 0.5** (U(Ui,ji,j + U+ U j,i j,i) = 0.5) = 0.5**((((∂∂UUii//∂∂xx j j) + () + (∂∂UU j j//∂∂xxii));));

Dilatasi dapat didefinisikan dengan Dilatasi dapat didefinisikan dengan ∆

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com Penyelesaian : load subdcSMTdenseVec.dat; data=subdcSMTdenseVec; load indonesia.dat xx=indonesia(:,1)*110*10^(5); yy=indonesia(:,2)*110*10^(5); % input data x=data(:,1); y=data(:,2);

lonlim=[min(x) max(x)];latlim=[min(y) max(y)]; x=x*110*10^(5);

y=y*110*10^(5);

u=data(:,3); v=data(:,4); n=length(x);

lamda=3.4*10^11;mu=lamda;

%Strain 2-D bisa didefinisikan sebagai berikut:

%eij = 0.5 * (Ui,j + Uj,i) = 0.5 * ((dUi/dxj) + (dUj/dxi)); %Strain 2-D bisa didefinisikan sebagai berikut:

%eij = 0.5 * (Ui,j + Uj,i) = 0.5 * ((dUi/dxj) + (dUj/dxi));

%Dilatasi dapat didefinisikan dengan %delta= (eii + ejj)

%Stress diformulasikan sebagai:

%toij = lamda*ekk*deltaij + 2*myu*eij; %lamda=myu

for i=1:n-1

xnew(i)=0.5*(x(i+1) + x(i)); ynew(i)=0.5*(y(i+1) + y(i));

% itung 0.5*((dUi/dXj)+(dUj/dXi)) du(i)=(u(i+1)-u(i)); % komponen dUi dv(i)=(v(i+1)-v(i)); % komponen dUj dx(i)=abs(x(i+1)-x(i)); % komponen dXi dy(i)=abs(y(i+1)-y(i)); % komponen dXj e11(i)=(du(i)/dx(i)); e12(i)=(0.5*((du(i)/dy(i))+(dv(i)/dx(i)))); e22(i)=(dv(i)/dy(i)); % dilat=dilatasi dilat(i)=e11(i)+e22(i); end

Kuliah Berseri IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com % visualisasi data perhitungan t1=linspace(min(xnew),max(xnew),75); t2=linspace(min(ynew),max(ynew),75);

[X,Y]=meshgrid(t1,t2); % koordinat grid

dilat_grid=griddata(xnew,ynew,dilat,X,Y,'cubic'); figure(1)

contourf(X,Y,dilat_grid,30),hold on;

title('Plot Dilatasi');caxis(10^-7*[-3 3]);shading flat colorbar('vertical');

plot(xx,yy)

Dalam dokumen Cepat Mahir Matlab (Halaman 75-108)

Dokumen terkait