如何使用 ggmap 绘制带孔的 shp?
How to plot a shp with holes with ggmap?
我正在尝试绘制此处可用的 *.shp 文件 ArcGis. Looking at the page 我从中获取数据的地方,我希望彩色区域看起来像这样:
.
但是当我绘制它时,我得到了一些不同的东西(见下文)。特别是,看起来有些多边形重叠,有些区域填充了双层蓝色(alpha为.5),而它们应该是空的。
library(ggmap)
brMap <- qmap(location = 'baton rouge', zoom = 10, maptype = 'terrain')
library(rgdal)
indundationArea <- readOGR('dataset/Estimated_Flood_Inundation_Area/Estimated_Flood_Inundation_Area.shp')
ogrInfo('dataset/Estimated_Flood_Inundation_Area/Estimated_Flood_Inundation_Area.shp')
indundationArea <- spTransform(indundationArea, CRS("+proj=longlat +datum=WGS84"))
indundationArea <- fortify(indundationArea)
brMap +
geom_polygon(aes(x=long, y=lat, group=group), size=.2,color='blue', fill = 'blue', alpha=.5, data=indundationArea)
您的问题是由带孔的多边形引起的。 geom_polygon
目前无法正确绘制这些。因此,您应该像这样使用 ggpolypath::geom_polypath
:
# continue after fortify
library(ggpolypath)
brMap +
geom_polypath(data = indundationArea,
aes(x=long, y=lat, group=group),
size=.2,
color='blue',
fill = 'blue',
alpha=.5)
另一个选项可能是 this one。但是,它对我不起作用...
我正在尝试绘制此处可用的 *.shp 文件 ArcGis. Looking at the page 我从中获取数据的地方,我希望彩色区域看起来像这样:
但是当我绘制它时,我得到了一些不同的东西(见下文)。特别是,看起来有些多边形重叠,有些区域填充了双层蓝色(alpha为.5),而它们应该是空的。
library(ggmap)
brMap <- qmap(location = 'baton rouge', zoom = 10, maptype = 'terrain')
library(rgdal)
indundationArea <- readOGR('dataset/Estimated_Flood_Inundation_Area/Estimated_Flood_Inundation_Area.shp')
ogrInfo('dataset/Estimated_Flood_Inundation_Area/Estimated_Flood_Inundation_Area.shp')
indundationArea <- spTransform(indundationArea, CRS("+proj=longlat +datum=WGS84"))
indundationArea <- fortify(indundationArea)
brMap +
geom_polygon(aes(x=long, y=lat, group=group), size=.2,color='blue', fill = 'blue', alpha=.5, data=indundationArea)
您的问题是由带孔的多边形引起的。 geom_polygon
目前无法正确绘制这些。因此,您应该像这样使用 ggpolypath::geom_polypath
:
# continue after fortify
library(ggpolypath)
brMap +
geom_polypath(data = indundationArea,
aes(x=long, y=lat, group=group),
size=.2,
color='blue',
fill = 'blue',
alpha=.5)
另一个选项可能是 this one。但是,它对我不起作用...