我正在尝试使用qmap(ggmap的一部分)创建地图。 这是一个用问题说明的示例代码。这有点傻,但它比使用我自己的数据要干净。
install.packages("ggmap")
library(ggmap)
qmap("Capitol Building, Washington DC", zoom = 15)
所以这是我的问题: 我想在国会大厦周围的区域放大一点(缩放= 15),以获得许多街道细节。 但我也希望在我的地图中加入华盛顿纪念碑。 为此,我想扩展地图的西部并使其成为矩形。
有人知道怎么做吗?任何见解都会非常感激。感谢您对初学者的耐心等待。
答案 0 :(得分:2)
喜欢这个吗?
library(ggmap)
cap <- geocode("Capitol Building, Washington DC")
wash <- geocode("Washington Monument, Washington DC")
loc <- unlist((cap+wash)/2)
ggmap(get_map(location=loc,zoom=15))+coord_fixed(ylim=loc[2]+.005*c(-1,+1))
所以这会根据国会大厦和华盛顿纪念碑之间的中间位置划出地图,然后通过设置ylim
来修剪它。
unlist(...)
的原因是geocode(...)
返回一个数据框,而get_map(...)
想要一个数字向量。
编辑对OP评论的回应。
coord_fixed(...)
强制纵横比为1:1,这意味着1°的纬度与经度的1°相同。要从地图中恢复原始宽高比,请使用coord_map(...)
。
ggmap(get_map(location=loc,zoom=15))+coord_map(ylim=loc[2]+.005*c(-1,+1))