【发布时间】:2019-01-25 18:41:32
【问题描述】:
我正在尝试使用 ggplot2 和 geom_map 制作地图,但我在做应该很简单的事情时遇到了麻烦...在顶部添加一组坐标!
这是我的基本地图代码的第一部分,基于我已经以 mapbasis 加载的 shapefile:
p1<-ggplot(mapbasis,aes(long,lat,map_id=id,fill=id))+
geom_map(map=mapbasis)
为了测试代码,我现在创建了一个只有一些坐标的数据框:
test<-data.frame(pointid=c(1,2,3),lat=c(53, 51, 50),lon=c(-0.2, -0.1, -1.4))
然后我尝试添加点如下:
p1+geom_point(aes(x=lon,y=lat),size=10,data=test)
然后,我并没有在其上有一个包含三个点的地图,而是以错误消息结束:
Error in data.frame ... arguments imply differing number of rows: 3,0
发生了什么事?我显然有经度和纬度坐标。我也试过只绘制test 对象,它工作正常。
谁能提出什么问题?
【问题讨论】:
-
也许 inherite.aes = false 可以解决这个问题?
-
成功了!非常感谢。因此,也许它在原始美学和 geom_point 中给出的新美学之间感到困惑。