我可以使用 ggmap 绘制多个地图,这也可以使用Kale & Wickham (2013) R Journal paper中描述的 faceting 。但我想绘制一系列围绕城市特定缩放区域平移的地图。如果我查看通过geocode()
函数获得的城市坐标并粗略地找出我需要从平移视图每一侧的经度/纬度中减去或添加的内容,这是可以实现的。这样的解决方案远非理想。让我用一个例子来说明(注意:Cookbook For Rmultiplot
中使用的函数)。
library(ggmap)
library(RgoogleMaps)
#getting Bristol lat/long
BRS <- geocode("Bristol, UK")
#get the first (central) map from the coordinates
BristolMapCenter <- ggmap(get_map(c(lon=BRS$lon, lat=BRS$lat), zoom = 15))
#get the second map panned to the right by adding approx. 0.015 to longitude
BristolMapRight <- ggmap(get_map(c(lon=BRS$lon+0.015, lat=BRS$lat),zoom = 15))
#multiplot function
multiplot(BristolMapCenter, BristolMapRight, cols=2)
如您所见,这远非理想,因为总体而言(我不想重叠,我想要“排队延续”),如果不是说笨拙的话,尤其是如果我想对周围区域进行更大的平移(比如说9-12张地图),为多个城市做这件事,在上面绘制一些数据,我生命中还有足够的时间在太阳上喝一品脱。所以我想知道是否有任何快速、流畅和自动的方法来获取基于特定中心坐标的平移地图?