Thursday, March 19, 2015

Menggunakan Python untuk Pemrograman GIS di ArcGIS Bagian 1

Saat ini perkembangan penggunaan bahasa pemrograman python dikalangan programming semakin berkembang pesat. Bahasa python sebagai bahasa pemrograman berkembang secara cepat karena keefektifan dan efisiensi dalam penulisan kode program namun dapat diandalkan kehandalannya. Sebagaimana bahasa pemrograman lainnya Python juga mempunyai karakteristik atau struktur yang dimiliki bahasa pemrograman lainnya, python juga mendukung pemrograman berorientasi objek.

Dalam dunia GIS (Geographic Information System) salah satunya penggunaan bahasa python adalah dalam aplikasi ArcGIS buatan ESRI untuk membuat geoprosessing script yang dapat menjalankan fungsi analisis spasial secara efektif dan memungkinkan otomatisasi menjalankan analisis spasial.

Saat ini saya akan mencoba belajar dan membahas bahasa pemrograman python terutama dalam penggunaan di bidang GIS dengan software ArcGIS.

Menggunakan IDLE untuk pengembangan script python

Ketika kita menginstal ArcGIS Desktop maka python secara otomatis terinstal IDLE sebagai Integrated Development Environment yang akan digunakan untuk menulis script python kita. Namun selain menggunakan IDLE banyak juga aplikasi lainnya yang dapat digunakan sebagai editor untuk penulisan script python.

Untuk membuka IDLE untuk penulisan script python  dilakukan dengan cara klik start -> All Programs -> ArcGIS ->Python 2.7 -> IDLE (Python GUI). Untuk versi python dapat berbeda-beda tergantung dari versi ArcGIS yang terinstal di komputer kita ataupun versi python yang diinsatal secara tersendiri di komputer.

Tampilan shell window IDLE sebagai berikut:

Gambar 1. Tampilan shell window IDLE

Shell windows python ini digunakan untuk menampilkan keluaran atau pesan yang dihasilkan dari sebuah script yang dijalankan dan bukan untuk menuliskan kode program. Untuk menulis kode program kita tulis dalam windows baru dengan memilih File -> New Window.


Gambar 2. Membuka shell window baru untuk menuliskan kode program python

Kemudian tampil shell window baru yang akan digunakan untuk menuliskan kode program python yang akan dijalankan dan ditampilkan hasilnya di shell window pada Gambar 1.


Gambar 3. Shell window untuk menuliskan kode program python

Selain menggunakan shell window IDLE, untuk menuliskan kode program python dapat menggunakan shell window python yang terintegrasi dalam aplikasi ArcGIS. Dan dapat dieksekusi langsung dari aplikasi ArcGIS.

Pada shell window IDLE penulisan kode program dan hasil eksekusi program dilakukan secara terpisah, sedangkan ketika menggunakan shell window python yang terintegrasi, keluaran ataupun hasil dari kode program yang dijalankan langsung dalam aplikasi ArcGIS.

Dibawah ini merupakan contoh penulisan kode program yang dibuat dengan menggunakan shell window IDLE untuk membuat buffer.

Gambar 4. Kode program untuk membuat buffer

Pada kode program diatas perintah atau kalimat yang ada dibelakang tanda # tidak dieksekusi karena tanda # digunakan sebagai penanda komentar.

import arcpy

Merupakan perintah untuk memanggil modul yang akan digunakan untuk menjalankan fungsi dalam modul pyhton.

arcpy.env.workspace = r"D:\MASTERPROGRAM\Python\esri video\data\PythonDesktop10_0\Data\Westerville.gdb"

Merupakan perintah untuk menunjukan lokasi tempat geodatabase berada.

fc = "Streets"

Merupakan perintah yang digunakan untuk mendefinisikan feature class yang akan dibuat buffer dan data nama feature class tersebut dimasukan kedalam variabel fc.

distanceList = ["100", "200", "300"]

Merupakan perintah untuk mendefinisikan nilai array yang akan digunakan sebagai ukuran nilai buffer.

for dist in distanceList:
    outName = fc+"__"+ dist
    arcpy.MultipleRingBuffer_analysis(fc, outName, dist, "Meters")

Merupakan perintah yang digunakan untuk membuat perulangan sejumlah data array yang akan dibuat buffer sesuai dengan nilai buffer yang sudah didefinisikan sebelumnya. Kemudian dengan menggunakan perintah

arcpy.MultipleRingBuffer_analysis(fc, outName, dist, "Meters")

Dibuat buffer dari feature class Streets dengan menggunakan satuan meter untuk masing-masing nilai 100, 200, dan 300 meter. Setiap nilai buffer yang dibuat akan menjadi sebuah feature class baru, sehingga dihasilkan 3 feature class baru yaitu:

Streets__100
Streets__200
Streets__300

print "Finished Buffering"

Merupakan perintah yang digunakan untuk menampilkan string Finished Buffering  yang menunjukan bahwa operasi buffering telah selesai dilakukan.
Untuk mengetahui hasil dari kode program yang dibuat dapat dijalankan dengan memilih menu Run -> Run Module atau dengan menekan F5. Jika kita hanya ingin menguji apakah dalam kode program kita ada eror atau tidak tanpa menjalankan kode program kita dapat dilakukan dengan memilih menu Run -> Check Module atau Alt+X.

Gambar 5. Menjalankan atau mengeksekusi kode program

Dari kode program yang dibuat sebelumnya jika tidak terdapat kesalahan penulisan kode program makan akan ditampilkan shell window seperti Gambar 6. 
Gambar 6. Tampilan hasil eksekusi kode program

Untuk melihat hasil dari kode program yang sudah dieksekusi diatas dapat dilihat dengan membuka ArcMap atau ArcCatalog dan lihat pada geodatabase Westerville.gdb maka akan dibuat 3 buah feature class baru.


Gambar 7. Feature class hasil eksekusi kode program buffer

Untuk mendownload tulisan dalam bentuk pdf silahkan download disini


Previous Post
Next Post

0 comments: