Giảm độ phân giải của shapefile trong R (hoặc QGIS nếu cần)


12

Tôi đang sử dụng shapefiles của lịch sử Hoa Kỳ ranh giới từ NHGIS để tạo bản đồ ở R. Những shapefile này có độ phân giải cao hơn nhiều so với tôi cần khi tạo bản đồ ở tỷ lệ của quốc gia: hơn 2 triệu quan sát cho một tệp. Có cách nào để tôi có thể giảm độ phân giải của các shapefile này trong R không? Nếu cần thiết, tôi có thể làm điều đó trong QGIS thay thế.


Bạn có thể giải thích thêm. Độ phân giải được liên kết với hình ảnh. Bạn có nghĩa là có quá nhiều nút trong một đa giác, cung cấp quá nhiều chi tiết? Hoặc là có quá nhiều điểm trong một shapefile điểm?
Ryan Garnett

2
@Ryan Mặc dù độ phân giải thực sự gắn liền với hình ảnh, nó cũng là một khái niệm có ý nghĩa đối với dữ liệu vectơ. Đối với các tính năng đa tuyến và đa giác, nó có thể được ước tính theo số lượng đỉnh được sử dụng trên một đơn vị chiều dài của cung. Độ phân giải không thể luôn luôn được xác định chính xác bằng cách kiểm tra dữ liệu vectơ (ví dụ, xem xét một tập hợp các tính năng điểm có độ phân giải cao nhưng có khoảng cách rộng rãi), độ phân giải thường được tìm thấy bằng cách tham khảo siêu dữ liệu phù hợp.
whuber

Tôi có nghĩa là có nhiều điểm hơn trong shapefile hơn là cần thiết để tạo ra một bản đồ của một quốc gia. Tôi muốn mức độ chi tiết đó để tạo ra một bản đồ của một thành phố. Lý do điều này quan trọng với tôi là nó làm cho việc tạo ra các ô chậm và do đó tốn thời gian để lặp lại.
Lincoln Mullen

Câu trả lời:


9

Bạn có thể sử dụng gSimplifytừ rgeosgói và nếu bạn thêm topologyPreserve=TRUEcờ, nó sẽ giữ nguyên cấu trúc liên kết.

Lưu ý rằng bạn vẫn có thể kết thúc với các dòng chồng chéo - chúng tôi cần triển khai thuật toán DP mạnh mẽ này trong R:

http://www.scTHERirect.com/science/article/pii/S0098300413002380

[liên kết đó có thể đằng sau một tường thành]


+1 Rất vui được biết. Các rgeostài liệu có tại cran.r-project.org/web/packages/rgeos/rgeos.pdf .
whuber

1

Một phương pháp tiêu chuẩn cho các hình dạng tuyến tính "làm mỏng" (bao gồm cả các ranh giới đa giác) là thuật toán Douglas-Peucker . Ít nhất hai Rgói thực hiện điều này: dptrong gói shapefilesthinnedSpatialPolytrong gói Guerry .

Lưu ý rằng việc làm mỏng các đa giác liền kề thường tạo ra các khoảng trống và chồng chéo nhẹ trong ranh giới của chúng: nó không tôn trọng các mối quan hệ tôpô giữa chúng. Tôi không biết bất kỳ Rgói duy trì cấu trúc liên kết trong khi mỏng. Đối với các mục đích lập bản đồ quy mô nhỏ như thế này không phải là một vấn đề nghiêm trọng.


Ngẫu nhiên, vì không ai biết cách phát âm tiếng Đức nữa :-), Tom Poiker đã thay đổi cách đánh vần tên của anh ấy một thời gian trước đây.


Bạn muốn rất cẩn thận khi bạn đang "làm mỏng" hình học. Nếu bạn có nhiều lớp chia sẻ ranh giới, pha loãng có thể tạo ra các khoảng trống, gây ra lỗi hình ảnh và độ chính xác. Quá mỏng có thể làm cho ranh giới lởm chởm và đơn giản hóa. Bạn sẽ muốn chơi và kiểm tra với dung sai trong đơn giản hóa.
Ryan Garnett
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.