Saturday 1 June 2013

Seleksi Data Spasial Dengan GMT

Pada kesempatan kali ini, saya akan menunjukkan cara melakukan seleksi data berdasarkan koordinatnya. Saya menggunakan data gempa di Indonesia dan akan saya beri warna merah untuk gempa di laut dan kuning untuk gempa di darat. Serta warna hijau untuk gempa dengan radius 750 km dari kota Palu, dan warna putih untuk gempa dengan batas poligon di Sumatera. Untuk melakukan seleksi data, perintah yang digunakan adalah "gmtselect".



Langkah pertama adalah membuat data gempa. Disini saya gunakan data gempa dari USGS :
117.43    -9.85    66    5.5
126.21    1.03    61    5.4
127.30    5.68    79    5.1
..............................
Simpan dengan nama "gempa.d"

Keterangan =
kolom 1 = bujur
kolom 2 = lintang
kolom 3 = kedalaman
kolom 4 = magnitude

Perintah "gmtselect" sebenarnya hanya  membaca dua kolom pertama dari data tersebut. Jadi jika kolom ketiga dan keempat tidak anda tulis juga tidak masalah.

Selanjutnya buatlah script berikut :

#Set parameter peta
set F=select.ps
set R=94/140/-13/13

#Peta dasar
psbasemap -JM25 -R%R% -Ba10g10WSne:: -K > %F%
makecpt -Cglobe -Z > elev.cpt
grdimage indo.nc -R -JM -Celev.cpt -K -O -Na -P >> %F%
pscoast -JM -R -Ba10g10WSne:: -O -K -Dh -W1 -Na/thickest,brown -Ir/0.1p,blue -Lf98/-11/17/500+l+jr --LABEL_FONT_SIZE=13p -Tf136/9/0.75i/2 --HEADER_FONT_SIZE=13p --HEADER_OFFSET=0.05i >>%F%

#Plot gempa
gawk "{print $1, $2, $3}" gempa.d | psxy -JM -R -Sc0.2c -W1 -Gred -O -K >>%F%

#Koordinat kota Palu
echo 119.8597 -0.9017 750 LT Palu > point.d

#Membuat polygon di Sumatera
echo 100 0 > kotak.d
echo 103 -3 >> kotak.d
echo 101 -4 >> kotak.d
echo 98 -0.8 >> kotak.d
echo 100 0 >> kotak.d

#Seleksi data sesuai kriteria
gmtselect gempa.d -R -Ns/k | psxy -R -JM -O -K -Sc0.2c -W1 -Gyellow >> %F%
gmtselect gempa.d -R -C750/point.d -fg  | psxy -R -JM -O -K -Sc0.2c -W1 -Ggreen >> %F%
gmtselect gempa.d -R -Fkotak.d -fg  | psxy -R -JM -O -K -Sc0.2c -W1 -Gwhite >> %F%

#Plot titik dan polygon
psxy -R -J -O -K point.d -Wfat,purple -S+0.2i >> %F%
gawk "{print $1, $2, 0, 2*$3, 2*$3}" point.d | psxy -R -J -O -K -SE -Wfat,purple >> %F%
gawk "{print $1, $2, 14, 0, 1, $4, $5}" point.d | pstext -R -J -O -K -Gpurple -D0.1i/-0.1i >> %F%
psxy -R -J -O -Wfat,purple kotak.d >> %F%

#Print Peta
ps2raster %F% -Gc:\programs\gs\gs8.53\bin\gswin32c -Tj -P -Fselect

Simpan dengan ekstensi ".bat".

Beberapa hal yang perlu diperhatikan adalah pada perintah "gmtselect", opsi -Ns/k artinya data di laut akan dilewatkan (skipped) sedangkan data di darat akan dipilih (kept). Urutannya sendiri adalah -Nocean/land/lake/island/pond. Jadi bisa kita sesuaikan data mana yang akan di lewatkan dan mana yang akan dipilih. Selanjutnya, opsi -C750/point.d artinya adalah memilih data pada radius 750 km dari titik "point.d". Opsi -Fkotak.d artinya adalah memilih data di dalam poligon "kotak.d". Opsi -fg artinya jarak dalam km.

Selamat mencoba dan semoga bermanfaat. Salam Orang Indonesia...

2 comments:

  1. Ka, perintah gmtselect saya coba berhasil membuat polygonnya, tapi warna plot gempanya tidak terseleksi, knp ya ka?

    ReplyDelete
  2. antara option -G dengan pilihan warnanya ada spasi mungkin, atau scriptnya persis kaya diatas?

    ReplyDelete