Tính diện tích đa giác giao nhau trong QGIS


10

Tôi có hai bộ sưu tập shapefiles:

1 - mã bưu chính, khu vực hành chính và chính trị

2 - các loại sử dụng đất khác nhau như công viên và giao đất, và các điểm như cây xanh

Tôi muốn đưa ra số liệu thống kê về diện tích của các loại sử dụng đất được chia nhỏ theo mã bưu chính, quản trị viên & khu vực chính trị và số điểm bằng cùng một phương tiện. Ví dụ, có 4,1ha công viên ở SE15, 879 cây ở SE22, v.v.

Tôi đang sử dụng QGIS. Tôi đã xử lý dữ liệu thô của mình để chuẩn bị tất cả các shapefile, nhưng sau nhiều lần tìm kiếm không có kết quả trên trang này và các trang web khác, tôi không thể tìm ra cách nào để làm điều này.


1
đó là vấn đề tìm điểm trong đa giác, hay đa giác trong đa giác? nếu vậy bạn có thể sử dụng các công cụ nghiên cứu.
Ger

Từ Livermore khoảng 1962 ...: cap-lore.com/MathPhys/IP
Norman Hardy

Câu trả lời:


6

Điều "Join Attributes by Location"này khá phù hợp cho mục đích này.

Giả sử chúng ta có một shapefiles Công viên và PostCodes trong bản đồ như hiển thị. Công viên có trường "Khu vực" và Mã bưu điện có trường "ZipCode". Các giá trị theo nhãn được hiển thị trong bản đồ. Chúng tôi sẽ cố gắng tìm tổng diện tích của các công viên trong mỗi đa giác zip.

nhập mô tả hình ảnh ở đây

Từ Vector> Công cụ quản lý dữ liệu> Chọn công cụ "Tham gia thuộc tính theo vị trí"

Đặt tham số như trong hình để chúng ta có thể tìm thấy tổng diện tích Công viên trong mỗi Đa giác PostCode và cũng có thể tìm thấy tổng Công viên trong mỗi Đa giác.

xem cấu trúc trường bên dưới ..

nhập mô tả hình ảnh ở đây

Từ Vector> Công cụ quản lý dữ liệu> Chọn công cụ "Tham gia thuộc tính theo vị trí"

đưa ra các thuộc tính như trong hình để chúng ta có thể tìm thấy tổng diện tích Công viên trong mỗi Đa giác PostCode và cũng tìm thấy tổng Công viên trong mỗi Đa giác.

nhập mô tả hình ảnh ở đây

Đầu ra sẽ là một shapefile giống hệt với shapefile PostCodes trong hình học, nhưng các thuộc tính sẽ được phản ánh đầu ra của hoạt động trước đó.

nhập mô tả hình ảnh ở đây


1
Điều gì xảy ra nếu các công viên không được chứa hoàn toàn trong mỗi đa giác mã bưu điện?
Simbamangu

2
Công cụ xử lý địa lý liên minh là câu trả lời, sau đó ... Xem câu trả lời sau của @Simbamangu!
wiltomap

6

Để tính diện tích đa giác giao nhau:

  1. Vector | Công cụ xử lý địa lý | Liên kết và chọn hai lớp và tên tệp đầu ra, sau đó OK để tính toán. Xác nhận 'có' để thêm lớp mới vào TOC.
  2. Lớp mới sẽ hiển thị tất cả các khu vực của mỗi lớp, được cắt bởi tất cả các cạnh chồng chéo và tất cả các thuộc tính của mỗi lớp sẽ được bao gồm ở nơi chúng trùng nhau (và NA không).
  3. Tính diện tích của đa giác - bạn có thể cần sử dụng UTM hoặc phép chiếu thích hợp khác - sử dụng máy tính trường ( $area / 1000000).
  4. Sau đó, tôi sẽ mở tệp DBF trong bảng tính và sử dụng pivottable để xem tổng diện tích cho từng đặc điểm bạn quan tâm - ví dụ: sử dụng mã bưu điện làm cột và sử dụng đất làm hàng, với tổng diện tích 'là giá trị.

nhập mô tả hình ảnh ở đây

Để có được điểm chứa trong đa giác:

  1. Thực hiện nối không gian - Vector | Công cụ quản lý dữ liệu | Tham gia theo vị trí, chọn lớp điểm làm mục tiêu và đa giác làm lớp vectơ tham gia;
  2. Lớp kết quả sẽ gắn các thuộc tính của đa giác với các điểm mà chúng trùng nhau;
  3. Một lần nữa, mở trong bảng tính và sử dụng pivottable, sử dụng 'Count' thay vì 'sum' cho bất kỳ thuộc tính điểm nào để hiển thị có bao nhiêu điểm nằm trong mỗi loại khu vực.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.