我正在为大伦敦地区提供一个形状文件。我使用readShapePoly
包中的maptools
函数将其作为SpatialPolygonDataFrame
加载到R中。
我想绘制那些多边形的情节..我已经通过在R中使用plot
函数的基本已经完成了。
输出如下图所示:
现在,我正在尝试使用ggplot2
绘制相同的形状文件,但它不适用于我。
我在图中看到一些奇怪的线,如图所示:
我使用的代码是:
london.wards <- readShapePoly("~/TD/london_wards2013/london_wards2013.shp"
, proj4string=CRS(projString))
wards.count <- nrow(london.wards@data)
# assign id for each lsoa
london.wards@data$id <- 1:wards.count
wards.fort <- fortify(london.wards, region='id')
ggplot(wards.fort, aes(long, lat)) + geom_polygon(colour='black', fill='white')
其中projString是描述用于输入形状文件的投影的投影字符串。
答案 0 :(得分:8)
您需要添加额外的美学group
。假设多边形id被称为ID
,则synatx将如下所示:
ggplot(wards.fort, aes(x = long, y = lat, group = ID)) +
geom_polygon(colour='black', fill='white')
答案 1 :(得分:0)
或者,最好过渡到sf软件包,该软件包通过nohup scriptname
几何结构与ggplot2
很好地集成在一起。
geom_sf
由reprex package(v0.2.1)于2019-05-20创建