Phân tích khoảng cách không gian trong QGIS


8

Tôi còn khá mới mẻ với QGIS và đang cố gắng tìm ra cách phân tích vấn đề sau.

Tôi có ba lớp:

  1. lớp giải quyết điểm với 253 mục
  2. cơ sở xử lý chất thải lớp điểm với 24 mục
  3. đường polyline lớp

Vấn đề của tôi là tìm khoảng cách giữa mỗi độ lún từ lớp (1) đến từng cơ sở xử lý ở lớp (2), tuy nhiên nó phải chịu đường (lớp 3), cụ thể là thay vì lấy ma trận khoảng cách trên không tôi đang tìm kiếm ma trận mô tả khoảng cách lái xe thực tế.

Tôi vui lòng yêu cầu sự giúp đỡ của bạn với đề xuất về cách thực hiện phân tích này với QGIS 1.7 (lưu ý rằng tôi không biết cách sử dụng các lớp PostGIS, nếu có liên quan)

  • Tôi nên sử dụng plugin nào?
  • Các polylines nên được kết nối với các điểm trong cả hai lớp?

3
Tôi nghĩ rằng bạn cần PostGIS và phần mở rộng pgRouting cho nó.
Simplexio

Cảm ơn @simplexio cho câu trả lời của bạn. Có ai khác có ý tưởng không? Đồng thời, tôi sẽ cố gắng đi sâu vào postGIS.
dof1985

Câu trả lời:


7

Mô tả ngắn về quy trình làm việc (GRASS-GIS) như @gmacfalane yêu cầu.

  1. Tôi đã thực hiện phân tích như được mô tả trong GRASS-GIS 7.0 svn. Sử dụng Linux-Mint 14 làm HĐH. Đó là vì tôi gặp khó khăn khi chạy các chức năng được yêu cầu trên HĐH Windows.

  2. Tôi đã nhập các tệp .shp đã được tạo trong Q-GIS sang GRASS. Tôi tạo dữ liệu trên Q-GIS dễ dàng hơn, nhưng cỏ có tất cả các chức năng cần thiết cho mục đích này.

  3. Tôi đã sử dụng v.buildv.clean để xây dựng cấu trúc liên kết cho mạng của mình (tệp đường shp)

  4. Tôi đã hợp nhất tất cả các nút (khu định cư và khu xử lý chất thải) vào tệp shp. Đã thêm một cột phân biệt từng loại nút từ các nút khác - và cung cấp dữ liệu trong đó bằng máy tính. ví dụ new_col = 10000 + id cho tất cả các khu định cư, 20000 + id cho tất cả các trang web tái chế, vv Sau đó, tôi đã gán cột là id mới (cột loại) - v.reclass có thể được sử dụng ở đây.

  5. Sử dụng v.net (hoạt động = kết nối) để kết nối tất cả các nút với mạng của bạn. Tôi đã sử dụng ngưỡng xấp xỉ. 4.500 mét.

  6. Sử dụng v.net.allpairs để tính khoảng cách giữa mỗi hai cặp điểm trên mạng của bạn.

  7. Tôi đã xuất dữ liệu sang tệp csv bằng v.db.select và tải nó vào Excel. Các dạng dữ liệu trong một ô cho mỗi dòng, được phân tách bằng |. Nếu tôi không nhầm - Tôi đã lọc tất cả các điểm nguồn (cột from_cat) thành các khu định cư, do đó có từ_cat trong khoảng từ 10000 - 19999.

  8. Sau đó, tôi đã nhận được một bảng có chứa các mục sau: from_cat, to_cat, distance / cost

  9. Tôi đã tách dữ liệu được đặt theo nguồn (to_cat) và xây dựng ma trận cho từng loại điều trị. Sau đó, tôi đã hình thành phân tích sâu hơn để biến nó thành ma trận chi phí và tìm ra con đường rẻ nhất từ ​​mỗi khu định cư đến từng loại địa điểm điều trị.

Bạn có thể tìm thấy giải thích về các chức năng (in nghiêng) trong hướng dẫn sử dụng cỏ . Nó cũng được khuyến khích để tìm kiếm và đăng ký vào danh sách gửi thư cỏ. Nó rất hữu ích.

Hy vọng tôi có thể đưa ra định hướng chung.


2

Đã được một thời gian và mặc dù có câu trả lời về nó ở đâu đó trong lịch sử Hỏi & Đáp, tôi đã quyết định sử dụng câu hỏi của mình để chia sẻ một số phát hiện của mình về phân tích mạng của QGIS.

Như @simplexio vui lòng đề xuất, postGIS với PGRouting là một tùy chọn, mặc dù quá phức tạp đối với tôi . Tôi phát hiện ra rằng với QGIS 1.8, plugin GRASS 6.4.2 là khá đủ để giúp phân tích mạng. Nó rất dễ vận hành (vì plugin sử dụng GUI QGIS và một số lệnh), hướng dẫn sử dụng dễ dàng điều hướng và nhập các tệp QGIS hoặc các tệp khác khá dễ dàng.

Tôi hy vọng sớm hoàn thành công việc của mình (khắc phục một số khó khăn kỹ thuật liên quan đến máy tính) và tải lên quy trình làm việc của mình, vì là người bắt đầu, việc tìm tài liệu hoặc cẩm nang khó khăn để hướng dẫn tôi trong quá trình này là khó khăn nhất.


Bạn có thể mô tả làm thế nào phương pháp này làm việc cho bạn? Tôi quan tâm đến một vấn đề tương tự ...
gregmacfarlane

1
@gmacfarlane - Tôi đã thêm câu trả lời để phác thảo quy trình làm việc tôi đã thực hiện
dof1985
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.