Hitung luas perpotongan poligon di QGIS

10

Saya memiliki dua koleksi shapefile:

1 - kode pos, wilayah administrasi dan politik

2 - berbagai kategori penggunaan lahan seperti taman & jatah, dan poin seperti pohon

Saya ingin membuat statistik pada area kategori penggunaan lahan yang dirinci berdasarkan kode pos, admin & area politik, dan jumlah poin dengan cara yang sama. Misalnya, ada 4,1ha taman di SE15, 879 pohon di SE22, dan sebagainya.

Saya menggunakan QGIS. Saya telah memproses data mentah saya untuk menyiapkan semua shapefile, tetapi setelah banyak pencarian yang sia-sia di sini dan situs web lainnya, saya tidak dapat melihat cara untuk melakukan ini.

tomchance
sumber
1
apakah ini masalah menemukan poin dalam poligon, atau poligon dalam poligon? jika demikian Anda dapat menggunakan alat penelitian.
Ger
Dari Livermore sekitar 1962 ...: cap-lore.com/MathPhys/IP
Norman Hardy

Jawaban:

6

The "Join Attributes by Location"sangat cocok untuk tujuan ini.

Misalkan kita memiliki shapefile Taman dan Kode Pos di peta seperti yang ditunjukkan pada layar. Taman memiliki bidang "Area" dan PostCodes memiliki bidang "Kode Pos". Nilainya sesuai dengan label yang ditampilkan di peta. Kami akan mencoba mencari jumlah area taman di setiap poligon zip.

masukkan deskripsi gambar di sini

Dari Vektor> Alat Manajemen Data> Pilih alat "Gabung Attributes by Location"

Tetapkan parameter seperti yang ditunjukkan pada gambar sehingga kita dapat menemukan jumlah luas Taman di setiap Postgode Polygons dan juga menemukan jumlah Taman di setiap Poligon.

lihat struktur bidang di bawah ini ..

masukkan deskripsi gambar di sini

Dari Vektor> Alat Manajemen Data> Pilih alat "Gabung Attributes by Location"

berikan atribut seperti yang ditunjukkan pada gambar sehingga kita dapat menemukan jumlah luas Taman di setiap Postgode Polygons dan juga menemukan jumlah Taman di setiap Poligon.

masukkan deskripsi gambar di sini

Outputnya akan berupa shapefile yang identik dengan shapefile PostCodes dalam geometri, tetapi atribut akan mencerminkan output dari operasi sebelumnya.

masukkan deskripsi gambar di sini

Vinayan
sumber
1
Bagaimana jika taman tidak sepenuhnya terkandung dalam setiap poligon kode pos?
Simbamangu
2
Alat geoproses serikat adalah jawabannya, lalu ... Lihat jawaban berikut oleh @Simbamangu!
wiltomap
6

Untuk menghitung area perpotongan poligon:

  1. Vector | Geoprocessing Tools | Union dan pilih dua layer dan dan output nama file, lalu OK untuk menghitung. Konfirmasikan 'ya' untuk menambahkan layer baru ke TOC.
  2. Lapisan baru akan menunjukkan semua area dari setiap lapisan, dipotong oleh semua tepi yang tumpang tindih, dan semua atribut dari setiap lapisan akan dimasukkan di mana mereka tumpang tindih (dan NA di mana tidak).
  3. Hitung area poligon - Anda mungkin perlu menggunakan UTM atau proyeksi lain yang sesuai - menggunakan kalkulator bidang ( $area / 1000000).
  4. Saya kemudian akan membuka file DBF dalam spreadsheet dan menggunakan pivottable untuk melihat jumlah area untuk setiap karakteristik yang Anda minati - misalnya, menggunakan kode pos sebagai kolom dan penggunaan lahan sebagai baris, dengan 'jumlah area 'sebagai nilai.

masukkan deskripsi gambar di sini

Untuk mendapatkan poin yang terkandung dalam poligon:

  1. Gabung spasial - Vektor | Alat manajemen data | Gabung dengan lokasi, pilih layer poin sebagai target dan poligon sebagai layer vektor gabung;
  2. Lapisan yang dihasilkan akan melampirkan atribut poligon ke titik-titik yang tumpang tindih;
  3. Sekali lagi, buka di spreadsheet dan gunakan pivottable, menggunakan 'hitung' alih-alih 'jumlah' untuk salah satu atribut poin untuk menunjukkan berapa banyak poin yang terletak di dalam setiap jenis area.
Simbamangu
sumber