Sunday, 1 January 2017

Mengira Jarak Terhampir - Point Distance

Selamat tahun baru 2017 kepada semua warga SukaGIS. Pejam celik pejam celik dah 5 tahun dah usia SukaGIS ni rupanya. Setakat ni blog dah mencapai 148,155 pageview dan page FB SukaGIS dah mencapai 1,390 like. Kira OK le tu. Sempena hari pertama bulan pertama tahun 2017 ni, saya akan kongsikan satu topik baru. Topik ni berkenaan Proximity Analysis pengiraan jarak. Saya bagi satu senario dulu. 

Katakan anda nak pergi ke sesuatu event, contohnya seminar ke, conference ke, kursus ke… dan anda nak cari lokasi hotel-hotel yang berdekatan dengan event tu untuk menginap. Selalunya kalau cerita pasal lokasi berdekatan ni, mesti kita nak tahu anggaran jarak kan??



So dalam ArcGIS, ada satu analisis yang dipanggil Point Distance. Analisis ni akan mengira jarak dari input point feature yang kita tentukan kepada setiap point feature yang berhampiran di sekeliling input point tu. Jarak yang dikira pula adalah jarak lurus radius disekeliling input point (lihat arrow gambarajah di atas tu). Syarat penggunaan tool ni seperti berikut :-

  1. Kena ada 2 layer point, ingat ye, layer point sahaja. Line ngan polygon tak jalan.
  2. Untuk kedua2 layer point tu,  1 layer mewakili input (dalam contoh ni, lokasi event) dan 1 lagi mewakili point2 terhampir (dalam contoh ni, hotel).
  3. Seelok-eloknya kedua2 layer point menggunakan sistem koordinat yang sama.
  4. Part ni leceh sikit.. anda kena guna lesen ArcGIS Desktop Advanced kalau nak execute tool ni. Desktop Basic/ArcView ngan Desktop Standard/ArcEditor tak support.


OK..next cara nak guna tool. Follow cara berikut :-



Penerangan gambar :-
  1. Dalam ArcToolbox, pilih Analysis Tools > Proximity > Point Distance
  2. Setkan Layer Input Point Feature.
  3. Setkan Layer Point Feature yang anda nak cari anggaran jarak tu.
  4. Namakan output table. Hasil pengiraan jarak akan diletakkan dalam table ni.
  5. Textbox Search Radius ni optional. Kalau anda isi, ArcGIS akan cari jarak disekitar radius yang anda masukkan saja. Kalau anda tak isi, dia akan kira jarak untuk kesemua point.
  6. Klik OK.

Macamana nak tengok hasilnya. Anda kena buka output table yang digenerate tu. Cuba lihat contoh output table yang dihasilkan di bawah ni.

Hasil analisis Point Distance


Anda akan dapati 3 field diwujudkan dalam table tu… INPUT_FID, NEAR_FID dan DISTANCE. OK… penerangan setiap field seperti berikut :-
  1. INPUT_FID : id unik untuk layer input point yang anda setkan tadi. Kalau input point anda tu shapefile, field ID ni = FID. Kalau anda gunakan layer geodatabase sebagai input point, field ID dia adalah OBJECTID.
  2. NEAR_FID : id setiap point yang berdekatan, dalam kes ni id hotel.
  3. DISTANCE : jarak dari setiap id point berdekatan kepada id input point (jarak setiap hotel ke lokasi event)


Tapi kalau tengok pada result dalam table tu, susah untuk anda tentukan hotel-hotel terhampir sebab result semua dalam bentuk nombor id, betul tak? Macamana nak tahu id 125 ni hotel mana, id 124 ni hotel mana.. kecuali anda kena check satu2 dengan buka table layer hotel plak… kan. Satu kerja la plak. So cara mudah nak buat camne?? Haaa kena la gunakan skill skit… guna kaedah join table. Anda joinkan field FID / OBJECTID dari table hotel kepada field NEAR_ID dari output table result tu.

Joinkan table untuk memudahkan mengenalpasti point terhampir

Result Join Table


Kalau tak faham macamana nak buat join table tu, boleh refer pada post saya sebelum ni di link sini.

Sekian… selamat mencuba.

No comments:

Post a comment