Monday, January 29, 2018

Python untuk Analisis Geospatial Bagian 2: Menggunakan Library OGR untuk Membaca Data SHP

Setelah dalam bahasan sebelumnya mengenai persiapan Python dan library untuk mengakses data spasial dilakukan pada tulisan

"Python untuk Analisis Geospatial Bagian 1: Install Library GDAL dan Shapely di Windows"


Langkah selanjunya adalah menggunakan library GDAL/OGR dan Shapely untuk mengakses data spatial. Sebelum kita melanjutkan ke contoh program dengan python, pertama kita harus mengenal mengenal data spasial yang akan kita olah disini.

"Mengenal Data Spasial"


Tools yang akan kita gunakan dalam contoh dibawah nanti adalah IDLE sebagai text editor bawan dari instalan Python. Langkah-langkah yang akan kita lakukan sebagai berikut:

  • Persiapan data saya menggunakan data administrasi BIG yang dapat didownload disini.
  • Buka aplikasi IDLE dari start menu
  • Kemudian di IDLE buka menu File-> New File dan ketikan kode perintah:
import ogr

shapefile = ogr.Open("D:\Master\Peta\DesaIndonesia.shp")
layer = shapefile.GetLayer(0)
for i in range(layer.GetFeatureCount()):
    feature = layer.GetFeature(i)
    feature_name = feature.GetField("KECAMATAN")
    geometry = feature.GetGeometryRef()
    geometry_type = geometry.GetGeometryName()
    print i, feature_name, geometry_type


  • Kemudian pilih menu Run -> Run Module atau dengan shortcut F5, untuk melakukan eksekusi program, jika berhasil maka di wondows baru ditapilkan seperti gambar dibawah.

  • Penjelasan kode program diatas adalah
import ogr

Sintak tersebut untuk mengimport librarry OGR yang merupakan library dari OSGEO yang dibuat untuk menulis dan membaca data vektor.

shapefile = ogr.Open("D:\Master\Peta\DesaIndonesia.shp")

Sintax diatas untuk membuka file DesaIndonesia.shp menggunakan library OGR.

layer = shapefile.GetLayer(0)

Sintax ini digunakan untuk menyimpan variable shapefile dalam sebuah datasource di libarry OGR, dimana datasource OGR dapat membaca beberapa informasi layer. Namun dalam contoh hanya terdapat 1 layer, dan kita mengakses 1 layer.

for i in range(layer.GetFeatureCount()):
    feature = layer.GetFeature(i)

Sintax tersebut digunakan untuk melakukan iterasi terhadap feature yang terdapat dalam shapefile, dan iterasi dilakukan untuk semua feature di file tersebut.

feature_name = feature.GetField("KECAMATAN")

Sintax tersebut untuk mendapatkan string dari field / kolom / atribut  "KECAMATAN", dimana dalam file DesaIndonesia.shp tersebut terdapat kolom yang bernama KECAMATAN, dan ingat cara menulisnya harus sama anatara penggunaan huruf besar dan kecil karena penamaan tersebut bersifat case sensitive.

geometry = feature.GetGeometryRef()

Sintax tersebut digunakan untuk mendapatkan referensi geometri.

geometry_type = geometry.GetGeometryName()

Sintax tersebut digunakan untuk mendapatkan jenis geometry dari DesaIndonesia.shp.

print i, feature_name, geometry_type

Sintax tersebut untuk mencetak nilai i (urutan dari 0 sampai data terakhir), nama kecamatan dan jenis geometri dari file DesaIndonesia.shp.

Demikianlah tulisan ini untuk melanjutkan klik

<<Sebelumnya     Selanjutnya>>    





Mengenal Data Spasial


Saat ini dengan perkembangan teknologi informasi, maka setiap data dan informasi dapat ditampilkan dalam sebuah data spasial yang lebih mempunyai makna  dan nilai lebih dibandingkan hanya ditampilkan dalam bentuk sederhana seperti dalam bentuk tabel ataupun hanya gambar saja. Data  yang dimaksud  memiliki atrribut spasial sehingga dapat diketahui atribut lokasi (geospasial) di permukaan bumi atau dalam arti sederhana setiap data tersebut diketahui lokasi nya dipermukaan bumi.

Untuk lebih mengerti mengenai data spasial dan karakteristiknya maka dalam tulisan ini akan dibahas secara umum mengenai data spasial yang biasa dikelola dalam sebuah Sistem Informasi Geografis. Saat ini data SIG dapat digunakan dan telah digunakan dalam semua aspek kehidupan dari mulai riset, bisnis, pendidikan, sosial budaya bahkan militer.

Data Spasial
Data spasial merupakan data yang bereferensi geografis atas representasi di permukaan bumi atau dengan kata lain data yang mempunyai informasi lokasi di permukaan bumi. Dalam perkembangannya data spasial bukan hanya data yang bereferensi di permukaan bumi saja namun bereferensi di atas permukaan bumi (udara) dan di bawah permukaan bumi (dibawah laut maupun dibawah tanah).

Data spasial secara umum dibagi menjadi dua bagian, yaitu data vektor dan data raster. Data vektor merefresentasikan data dalam bentuk vektor (titik, garis dan area atau polygon) sedangkan data raster merefresentasikan data bentuk piksel-piksel atau yang disebut citra/image.


Data Vektor
Data vektor menampilkan data SIG dalam bentuk titik, garis atau are (polygon) yang mempunyai atribut. Data spasial berbentuk titik merefresentasikan lokasi suatu data atau penomena dipermukaan bumi seperti lokasi ibukota, lokasi gedung, lokasi tiang listrik, titik tinggi dan sebagainya yang dapat direfresetasikan dalam bentuk titik. Data vektor jenis ini terdiri dari satu nilai x dan y dan bisa juga memiliki nilai z misal nilai ketinggian.

Data vektor yang berbentuk garis (line atau polyline) data yang merefrentasikan suatu penomena di bumi seperti jalan, sungai, ataupun alur navigasi dan lain-sebagainya. Data ini terdiri dari nilai x dan y yang berurutan dan bisa dihitung panjangnya.

Dan terakhir data yang berbentuk polygon adalah data yang merefresentasikan penomena dibumi yang mempunyai wilayah atau luasan, misalnya batas administrasi desa, kecamatan, kabuaten, proponsi, negara, danau, waduk, laut, tutupan lahan dan lain sebagainya. Data ini terdiri dari nilai x dan y yang berurutan dan bersifat tertutup serta bisa dihitung luasannya.

Data Raster
Data rater merefresentasikan objek di permukaan, atas, bawah bumi dalam bentuk matrik atau piksel-piksel yang membentuk grid yang secara sederhana bisa kita sebut citra atau gambar. Setiap piksel-piksel tersebut mempunyai nilai atribut lokasi (x,y). Dan setiap piksel tersebut bisa mempunyai resolusi yang berbeda-beda dalam merefresentasikan objek tergantung dari kedetailan dalam pengambilan data. Sehingga data raster dalam soal resolusi nya bisa dibagi menjadi data resolusi tinggi, menengah dan tinggi.

Contoh dari data spasial raster adalah:
  • Resolusi rendah (red: diatas 30 meter): Terra Modis, NOAA 
  • Resolusi menengah (red: 4 -30 meter):ASTER, Landsat 7, Alos
  • Resolusi tinggi (red: resolusi 0,4 - 4 meter): GeoEye-1, WorldView-2, WorldView-1, QuickBird, IKONOS, FORMOSAT-2, and SPOT-5.
Sumber: https://lajugandharum.wordpress.com/2011/01/07/kesepadanan-skala-peta-dan-resolusi-spasial-citra/

Demikian tulisan sederhana ini semoga bermanfaat dan nanti di suatu saat akan lebih didetailkan karena penjelasan yang dijabarkan diatas masih bersifat global sekali. @wawanhn

Sumber:
https://lajugandharum.wordpress.com/2011/01/07/kesepadanan-skala-peta-dan-resolusi-spasial-citra/
https://grivinayuliantika.blogspot.co.id/2013/05/karakteristik-citra-dari-resolusi.html
https://dtechnoindo.blogspot.co.id/2016/10/defenisi-data-spasial-dan-format-data.html
https://selfaseptianiaulia.wordpress.com/2013/05/17/pertemuan-1-macam-macam-jenis-citra-satelit-dan-penggunaannya-serta-menggabungkan-band-pada-landsat/

Friday, January 26, 2018

Python untuk Analisis Geospatial Bagian 1: Install Library GDAL dan Shapely di Windows


Bagi yang sedang belajar Python untuk analisis geospasial akan berkaitan dengan beberapa library yang bisa digunakan untuk mengolah data spasial seperti GDAL untuk data raster, OGR untuk data vektor dan shapely untuk analisis operasi data spasial.

Pada bagian awal tulisan Python untuk Analisis Geospatial, akan membahas persiapan Python dan beberapa library yang akan digunakan untuk analisis geospatial. Dalam hal ini akan dijabarkan langkah-langkah dalam menginstal Python, GDAL/OGR library, Shapely library dan library lain-lainya yang dperlukan.

Dalam bagian pertama tulisan ini akan dijebarkan persiapan analisis geospatial dengan menggunakan python. Dalam uraian dibawah akan dijelaskan langkah-langkah dalam menginstall di Windows aplikasi Python, GDAL dan Shapely.

1. Install Python 2.7.14

link Python 2.7.14

2. Install GDAL

untuk menginstall gdal python gunakan perintah

Python -m pip install <lokasi file>\<file.whl>

link GDAL windows Python 2.7

3. Install Shapely

untuk menginstall shapely python gunakan perintah

Python -m pip install <lokasi file>\<file.whl>


Link Shapely Python 2.7 32 Bit

Demikian semoga bermanfaat. @wawanhn.

Sumber: 
https://pythongisandstuff.wordpress.com/2016/04/13/installing-gdal-ogr-for-python-on-windows/
https://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely

Membuat File exe dari Kode Python

Pada saat kita menulis source code python untuk aplikasi teretentu file python disimpan dengan ektensi .py. Untuk menjalankan kode program tersebut menggunakan command prompt atau menggunakan IDLE.


Pada saat ini saya akan mencoba mengkonversi souce code python tersebut menjadi file executable sehingga bisa langsung dijalankan dengan melakukan klik dua kali file exe tersebut. 

Sunday, January 21, 2018

Download Text Editor Gratis Terbaik untuk Programmer

Bagi seorang programmer atau yang ingin menjadi programmer tentu aakan sangat memerlukan text editor untuk membuat dan menulis kode programnya. Text editor merupakan salah satu aplikasi yang digunakan untuk menulis kode program dengan lebih mudah karena adanya beberapa fitur yang berguna dalam membatu menulis program dengan cepat dan mudah.

Beberapa text editor mempunyai beberapa fungsi anatra lain sebagi compiler, syntax highlighting, search, line marking, snippet, comment, prediction dan lain-lain yang sangat membantu dalam menulis kode program sehingga menghindari kesalahan dan mempercepat pembuatan kode program.

Dari banyak text editor yang tersedia secara online yang dapat kita download, berikut ada beberapa text editor yang dapat digunakan oleh para programmer atau calon programmer yang akan belajar membuat kode program dengan mudah. Beberapa text editor yang saya bagikan tersedia dalam versi gratis sehingga tidak membutuhkan lisensi untuk menggunakannya, sehingga bisa belajar program komputer tanpa harus mengeluarkan biaya dengan hanya modal keinginan dan kerja keras...


  • Notepad ++

Notepad ++ merupakan text editor gratis terbaik yang berjalan dalam sistem operasi windows. layaknya aplikasi notepad namun dengan berbagai kecanggihan yang tidak dimiliki notepad biasa, sehingga aplikasi notepad ++ sangat mudah digunakan sekalipun bagi yang pertama kali. Aplikasi notepad ++ mendukung berbagai bahasa pemrograman diantaranya Assembly, C, C++, C#, CSS, HTML, Java, Javascript, Pascal, Pearl, PHP, Python, Shell, SQL, VB, XML.

Dengan dibuat berbasis C++ aplikasi Notepad ++ berjalan di sistem operasi windows dengan menggunakan memory dan resources  komputer rendah, sehingga dapat berjalan secara cepat. Bagi Anda yang ingin download aplikasi Notepad ++ dapat didownload disini 
  • Sublime Text

Sublime text sebagai salah satu text editor terbaik untuk programmer yang dapat digunakan dalam berbagai platform sistem operasi dengan berbagai kecangihan fitur yang biasanya digunakan untuk web developer dalam membuat kode program. Text editor usblime tersedia dalam versi gratis dan berbayar. Beberapa fitur yang ada dalam sublime text diantaranya adalah command pallete, multiple selections, distraction free mode, split editing, plugin API dan lain-lain. Dan jika kita ingin menmabahkan berbagai fitur lain dalam menambahkan plugins yang ada di internet.

Sublime text editor dapat didownload disini 
  • Atom 
Atom merupakan text editor yang modern dan cangggih yang memungkinkan untuk dikostumisasi dengan melakukan perubahan di core filenya sehingga bisa meningkatkan produktifitas kerja kita. ATom text editor bersifat gratis dan dapat berkerja di berbagai platform sistem operasi.

Beberaps fitur canggih yang terdapat dalam atom text editor antara lain adalah  cross platfor editing, built in package manager, smart autocompletion, file system browser, multiple panel, find and replace dan lain-lain.

Atom text editor dapat didownload disini 

Demikian dulu tulisan kali ini semoga bermanfaat. @wawanhn

Thursday, January 18, 2018

Download Aplikasi WPS Office sebagai Pengganti Microsoft Office


Bagi yang belum mengenal aplikasi ini, WPS merupakan aplikasi open source yang diciptakan untuk mengolah data selayaknya Microsoft Office. Bagi yang sudah terbiasa dengan Microsoft Office pasti tidak akan kesulitan untuk menggunkan aplikasi ini karena desain dan fungsi aplikasi ini selayaknya versi Microsoft Office namun dalam versi yang gratis tanpa harus membeli lisensi. Dengan WPS versi gratis sudah sangat memadai untuk menjalankan pekerjaan sehari-hari dan menggantikan Microsoft Office yang harus membeli untuk mendapatkan lisensinya. Meskipun untuk tingkat advance WPS menyediakan dalam versi premium dengan berbagai kelebihan yang tidak ada dalam versi gratis. Menurut saya pribadi setelah menggunakan beberapa aplikasi open source untuk office, WPS merupakan salah satu yang terbaik dengan berbagai kemudahan dan kelengkapan fungsi dan bisa menggantikan aplikasi Microsoft Office jika dalam pekerjaan kita membutuhkan adanya lisensi aplikasi.

Dalam aplikasi WPS terdapat 3 aplikasi layaknya dalam Microsoft Office yaitu:
  • WPS Writer, merupakan aplikasi dalam WPS yang digunakan untuk mengolah kata seperti Microsoft Office. Dengan aplikasi WPS Writer berbagai fungsi yang dibutuhkan dan digunakan untuk mengetik dalam MIcrosoft Office hampir semuanya tersedia di aplikasi ini. Jadi jangan khawatir jika mau mengetik dan tidak punya lisensi Microsoft Office untuk menyelesaikan pekerjaan yang membutuhkan lisensi.
  • WPS Spredsheets, merupakan aplikasi dalam WPS yang digunakan untuk mengolah angka dan tabel seperti  Microsoft Excel. Selayakanya Excel dengan WPS kita dapat menyelesaikan pekerjaan tanpa harus bayar mahal untuk beli lisensi.
  • WPS Presentation, bagi yang terbiasa melakukan presentasi tidak lagi khawatir jika tidak punya lisensi Microsoft Office. Aplikasi Powerpoint dapat digantikan oleh aplikasi WPS Presentation yang mudah digunakan dan sangat powerfull.
Dengan menggunakan WPS tidak usah khawatir dengan kompatibilitas file, karena data yang diolah di Microsoft Office bisa dibaca dengan baik di WPS dan data yang diolah dengan WPS juga dapat dibaca dengan baik di Microsoft Office. Jadi saat bekerja dengan WPS tidak usah khawatir tidak dapat dibuka di Microsoft Office ataupun aplikasi Office lainya yang bersifat open source.

Bagi yang membutuhkan aplikasi WPS silahkan download link di bawah ini:

WPS Free 2017 WPS 2017

WPS Premium 2016 WPS 2016 Patch

Terima kasih sudah menyimak semoga bermanfaat. @wawanhn.

Sumber:
https://www.wps.com/
http://gigapurbalingga.net/wps-office-2015-premium-full/

Tuesday, January 16, 2018

Deploying Flask Python di Pythonanywhere

Ada beberapa webhosting yang dapat digunakan untuk deploying aplikais web dengan menggunakan bahasa Python, salah satu yang terkenal adalah menggunakan website pythonanywhere.

Berikut saya share bagaimana cara mendeploy web berbasis python Flask dengan menggunakan webhosting pythonanywhere.


  • Menuju menu Console dan pilih Bash. Kemudian buat virtual environment untuk Flask applicatioan: dengan perintah mkvirtualenv <nm_vitrtualenv> atau virtualenv <nm_vitrtualenv>

          $ mkvirtualenv --python=/usr/bin/python3.4 deploy  <enter>


  • Kemudian install aplikasi web Flask

  • Kemudian menuju menu Files, dan tambahkan folder deploy

  • Sebelumnya buat file "myflask.py" dengan isi 
          from flask import Flask

      app = Flask(__name__)

      @app.route('/')
      def index():
  return '<h1>Deployed!</h1>'
      if __name__ == '__main__':
  app.run()
  • Dalam folder deploy yang sudang dibuat sebelumnya upload file myflask.py
  • Kemudian pindah ke menu Web, dan jika belum ada aplikasi web (pertama kali), klik button a new web app 

  • kemudian pilih manual configuration dan selanjutnya pilih Python 3.4, kemudian klik next

  • Selanjutnya kita mencoba melihat hasil deploy aplikasi Flask kita. misal saya buat dalam tahap sebelumnya wawanhn.pythonanywhere.com maka dihasilkan seperti dibawah ini. Tampilan dibawah karena kita belum set path dari virtual enviroment kita

  • Selanjutnya ada perubahan pada file /var/www/wawanhn_pythonanywhere_com_wsgi.py pada bagian Code: lakukan perubahan pada file tersebut dengan mengaktifkan perintah untuk aplikasi Flask dan setelah selesai klik save.

Demikian tulisan sederhana ini selamat mencoba...