Saya menggunakan shapefile sejarah Batas-batas negara bagian AS dari NHGIS untuk membuat peta di R. Shapefile ini adalah resolusi yang jauh lebih tinggi daripada yang saya perlukan ketika membuat peta pada skala negara: lebih dari 2 juta pengamatan untuk satu file. Apakah ada cara agar saya dapat mengurangi resolusi shapefile ini di R? Jika perlu, saya bisa melakukannya di QGIS.
qgis
shapefile
r
resolution
Lincoln Mullen
sumber
sumber
Jawaban:
Anda dapat menggunakan
gSimplify
darirgeos
paket, dan jika Anda menambahkantopologyPreserve=TRUE
bendera itu akan mempertahankan topologi.Perhatikan bahwa Anda masih dapat berakhir dengan garis yang tumpang tindih - kita perlu implementasi algoritma DP yang kuat ini di R:
http://www.sciencedirect.com/science/article/pii/S0098300413002380
[tautan itu mungkin di belakang paywall]
sumber
rgeos
docs berada di cran.r-project.org/web/packages/rgeos/rgeos.pdf .Metode standar untuk bentuk linear "penipisan" (termasuk batas poligon) adalah algoritma Douglas-Peucker . Setidaknya dua
R
paket mengimplementasikan ini:dp
dalam paket shapefile danthinnedSpatialPoly
dalam paket Guerry .Perhatikan bahwa penipisan poligon yang berdekatan biasanya menciptakan sedikit celah dan tumpang tindih dalam batas-batasnya: itu tidak menghormati hubungan topologi di antara mereka. Saya tidak mengetahui adanya
R
paket yang mempertahankan topologi saat menipis. Untuk keperluan pemetaan skala kecil seperti ini yang seharusnya tidak menjadi masalah serius.Kebetulan, karena tidak ada yang tahu cara mengucapkan bahasa Jerman lagi :-), Tom Poiker mengubah ejaan namanya beberapa waktu yang lalu.
sumber