Analisis jarak spasial di QGIS

8

Saya cukup baru di QGIS dan mencoba mencari cara untuk menganalisis masalah berikut.

Saya memiliki tiga lapisan:

  1. lapisan titik pemukiman dengan 253 entri
  2. lapisan titik fasilitas pengolahan limbah dengan 24 entri
  3. lapisan jalan polyline

Masalah saya adalah menemukan jarak antara setiap penyelesaian dari lapisan (1) ke setiap fasilitas pengolahan di lapisan (2), namun itu harus dikenai jalan (lapisan 3), yaitu alih-alih mendapatkan matriks jarak udara yang saya cari untuk matriks yang menggambarkan jarak mengemudi yang sebenarnya.

Saya dengan hormat meminta bantuan Anda dengan saran tentang bagaimana melakukan analisis ini dengan QGIS 1.7 (perhatikan bahwa saya tidak tahu cara menggunakan lapisan PostGIS, jika relevan)

  • plugin apa yang bisa atau harus saya gunakan?
  • Haruskah polyline dihubungkan ke titik di kedua lapisan?
dof1985
sumber
3
Saya pikir Anda perlu PostGIS dan ekstensi pgRouting untuk itu.
simplexio
Terima kasih @simplexio atas jawaban Anda. Adakah yang punya ide? Pada saat yang sama, saya akan mencoba menyelam ke postGIS.
dof1985

Jawaban:

7

Deskripsi singkat tentang proses kerja (GRASS-GIS) seperti yang diminta @gmacfalane.

  1. Saya telah melakukan analisis sebagaimana dijelaskan dalam GRASS-GIS 7.0 svn. Menggunakan Linux-Mint 14 sebagai OS. Itu karena saya mengalami kesulitan untuk menjalankan fungsi yang diminta pada OS Windows.

  2. Saya sudah mengimpor file .shp yang dibuat dalam Q-GIS ke GRASS. Lebih mudah bagi saya untuk membuat data pada Q-GIS, tetapi rumput memiliki semua fungsi yang diperlukan untuk tujuan ini.

  3. Saya telah menggunakan v.build dan v.clean untuk membangun topologi untuk jaringan saya (file road shp)

  4. Saya telah menyatukan semua node (pemukiman dan situs pengolahan limbah) ke file shp. Menambahkan kolom yang membedakan setiap jenis simpul dari yang lain - dan memasukkan data di dalamnya menggunakan kalkulator. mis. new_col = 10000 + id untuk semua pemukiman, 20000 + id untuk semua situs daur ulang, dll. Lalu saya telah menetapkan kolom itu untuk menjadi id baru (kolom kategori) - v.reclass dapat digunakan di sini.

  5. Gunakan v.net (operation = connect) untuk menghubungkan semua node ke jaringan Anda. Saya telah menggunakan ambang kira-kira. 4.500 meter.

  6. Gunakan v.net.allpairs untuk menghitung jarak antara masing-masing dua pasang titik di jaringan Anda.

  7. Saya telah mengekspor data ke file csv menggunakan v.db.select dan memuatnya ke Excel. Formulir data dalam satu sel untuk setiap baris, dipisahkan dengan |. Jika saya tidak salah - saya memfilter semua titik sumber (kolom from_cat) menjadi pemukiman, sehingga memiliki from_cat antara 10.000 - 19999.

  8. Kemudian saya telah menerima tabel yang berisi berikut ini: from_cat, to_cat, jarak / biaya

  9. Saya telah memisahkan kumpulan data dengan sumber (to_cat) dan membangun sebuah matriks untuk setiap jenis perawatan. Kemudian saya telah membentuk analisis lebih lanjut untuk mengubahnya menjadi matriks biaya dan menemukan rute termurah dari setiap pemukiman ke setiap jenis lokasi perawatan.

Anda dapat menemukan penjelasan tentang fungsi (miring) dalam manual-rumput . Dianjurkan juga untuk mencari dan mendaftar ke milis rumput. Itu sangat membantu.

Semoga saya bisa memberikan arahan umum.

dof1985
sumber
2

Sudah lama dan meskipun ada jawaban tentangnya di suatu tempat dalam sejarah Q&A gis, saya telah memutuskan untuk menggunakan pertanyaan saya untuk membagikan beberapa temuan saya mengenai analisis jaringan QGIS.

Seperti yang disarankan @simplexio, postGIS dengan PgRouting adalah sebuah opsi, meskipun terlalu rumit untuk saya . Saya menemukan bahwa dengan QGIS 1.8, plugin GRASS 6.4.2 cukup memadai untuk membantu analisis jaringan. Mudah dioperasikan (karena plugin menggunakan QGIS GUI, dan beberapa perintah), manualnya mudah dinavigasi dan mengimpor file QGIS atau lainnya cukup mudah.

Saya berharap untuk menyelesaikan pekerjaan saya segera (mengatasi beberapa kesulitan teknis yang berhubungan dengan pc) dan mengunggah proses kerja saya, karena sebagai pemula, adalah yang paling sulit bagi saya untuk menemukan dokumen atau buku pegangan yang cukup untuk membimbing saya melalui proses.

dof1985
sumber
Bisakah Anda jelaskan bagaimana metode ini bekerja untuk Anda? Saya tertarik pada masalah yang sama ...
gregmacfarlane
1
@gmacfarlane - Saya telah menambahkan jawaban untuk menguraikan proses kerja yang telah saya lakukan
dof1985