Kullanarak çokgenler arasındaki küçük "şerit" ortadan kaldırmak için bir yolu var mı R
? İstenen çözüm, SpatialPolygonsDataFrame
çokgenler arasındaki paylaşılan sınırların çakıştığı yeni bir ortam oluşturacaktır. Özellikle R
ArcMap veya QGIS yerine kullanılan bir çözümle ilgileniyorum .
Ayrıca, bu boşlukların neden ilk başta bulunduğuna dair bir açıklama duymak isterim.
İşte birlikte çalıştığım uzamsal verilerin tekrarlanabilir bir örneği:
library(rgdal)
library(sp)
library(tigris)
library(magrittr)
library(leaflet)
library(gplots)
# This project will use WGS 84 projected coordinate system
crs_proj <- CRS("+init=epsg:4326")
# These are the FIPS codes of the specific block groups in my study area
sel <- c("530330079005", "530330079001", "530330079004",
"530330085002", "530330085003", "530330086003",
"530330087003", "530330085001", "530330090001",
"530330091001", "530330091002", "530330092001",
"530330092002", "530330086001", "530330090002",
"530330086002", "530330079003", "530330079002",
"530330087002", "530330087001")
# Create polygons
polygons <- tigris::block_groups(state = "WA",county = "King") %>%
.[.@data$GEOID %in% sel,] %>%
spTransform(CRSobj = crs_proj)
# Map the result
leaflet() %>%
addProviderTiles("CartoDB.Positron") %>%
addPolygons(data = polygons,
stroke = F,
fillColor = col2hex("red"), fillOpacity = 1)
Yukarıdaki ekran görüntüsünde görebileceğiniz gibi, sayım blok grubu çokgenleri arasında küçük boşluklar vardır. Bu boşlukların bu konumu, yakınlaştırma düzeyine bağlı olarak farklı şekilde oluşturulur, ancak her zaman görünür bazı boşluklar vardır.
Herkes R
bu boşlukları ortadan kaldırmak için çokgenleri programlı olarak ayarlamak için bir işlev (veya işlevlerin bir kombinasyonu) önerebilir mi?