Halo sobat semua. Dalam tulisan ini saya ingin berbagi tentang metode interpolasi dengan menggunakan MATLAB. Yuk, simak uraiannya berikut ini.
Dalam
proses pengumpulan data di lapangan atau eksperimen laboratorium bisa saja
terjadi kendala, seperti data kurang lengkap atau data hilang yang dapat
mengganggu analisis data. Permasalahan tersebut dapat diselesaikan dengan
menggunakan interpolasi (interpolation).
Interpolasi merupakan suatu teknik mencari nilai-nilai antara yang tidak ada
dalam suatu data. Selain berguna mengisi data yang hilang atau kosong,
interpolasi juga biasa digunakan untuk memuluskan kurva. Intepolasi terbagi
atas beberapa jenis, diantaranya: interpolasi linear, kuadrat, polinomial,
Lagrange, dan Newton. Interpolasi yang paling mudah digunakan adalah interpolasi
linear.
Dalam
MATLAB terdapat berbagai perintah/fungsi yang dapat digunakan untuk interpolasi
data. Interpolasi dalam MATLAB dibedakan atas dua jenis, yaitu interpolasi
untuk data grid (grid data points)
dan data gerombol (scattered data points). Dalam tulisan ini akan dibahas beberapa
interpolasi MATLAB yang umum, diantaranya:
vq
= interp1(x,v,xq,method): mencari hasil interpolasi
data berdimensi satu. Titik-titik sampel data dinyatakan dengan (x,v).
Vektor xq menyatakan sekumpulan titik
untuk interpolasi (xq,vq). Beberapa method
yang tersedia yaitu linear (default), nearest, cubic, spline,
pchip, makima, dan lain-lain.
Vq
= interp2(X,Y,V,Xq,Yq,method): mencari hasil interpolasi
untuk data grid dua dimensi. Titik-titik sampel data dinyatakan dengan (X,Y,V).
Vektor Xq dan
Yq menyatakan sekumpulan titik untuk interpolasi (Xq,
Yq, Vq). Beberapa method
yang tersedia yaitu linear (default), nearest, cubic, spline, dan
makima.
Baca juga: Fungsi Statistika pada MATLAB
Contoh 1
%mendeklarasikan
titik-titik sampel (x,v)
x
= 0:pi/4:2*pi;
v
= cos(x);
%mendeklarasikan
titik di sumbu-x untuk interpolasi
xq
= 0:pi/16:2*pi;
%interpolasi
dan plot
figure
vq1
= interp1(x,v,xq);
plot(x,v,'ro',xq,vq1,'b:.');
xlim([0
2*pi]);
title('Interpolasi
linear/standar');
Plot interpolasi linear |
Contoh 2
%mendeklarasikan
titik-titik sampel (x,v)
x
= 0:pi/4:2*pi;
v
= cos(x);
%mendeklarasikan
titik di sumbu-x untuk interpolasi
xq
= 0:pi/16:2*pi;
%interpolasi
dan plot
subplot(2,2,1)
vq1
= interp1(x,v,xq,'nearest');
plot(x,v,'ro',xq,vq1,'b:.');
title('Interpolasi
nearest');
subplot(2,2,2)
vq2
= interp1(x,v,xq,'linear');
plot(x,v,'ro',xq,vq2,'b:.');
title('Interpolasi
linear');
subplot(2,2,3)
vq3
= interp1(x,v,xq,'spline');
plot(x,v,'ro',xq,vq3,'b:.');
title('Interpolasi
spline');
subplot(2,2,4)
vq4
= interp1(x,v,xq,'cubic');
plot(x,v,'ro',xq,vq4,'b:.');
title('Interpolasi
cubic')
Plot berbagai jenis interpolasi |
Contoh 3
%mendeklarasikan titik-titik sampel (X,Y,V)
[X,Y] = meshgrid(-5:5);
V = peaks(11);
%mendeklarasikan titik di sumbu-x dan y
[Xq,Yq] = meshgrid(-5:0.5:5);
%interpolasi dan plot
subplot(2,2,1)
surf(X,Y,V)
title('Plot 3D data sampel');
subplot(2,2,2)
Vq = interp2(X,Y,V,Xq,Yq);
surf(Xq,Yq,Vq);
title('Interpolasi linear');
subplot(2,2,3)
Vq2 = interp2(X,Y,V,Xq,Yq,'spline');
surf(Xq,Yq,Vq2);
title('Interpolasi spline');
subplot(2,2,4)
Vq3 = interp2(X,Y,V,Xq,Yq,'cubic');
surf(Xq,Yq,Vq3);
title('Interpolasi cubic');
Plot dengan interpolasi interp2 |
Demikianlah pembahasan tentang metode interpolasi dengan menggunakan MATLAB. Nantikan artikel menarik lainnya seputar pemrograman MATLAB.
Semoga bermanfaat.😊
Baca juga:
membantu min tapi tolong buat videonya dong stress aku tuh
BalasHapus