带有图层的 spplot 未对齐

spplot with layers are not aligned

我正在尝试在 ggmap 上叠加意大利边界地图。我正在使用 spplot,但图层未对齐。

这是我的代码:

library(raster)
library(ggmap)
library(RColorBrewer)
library(latticeExtra)

setwd("c:\temp")
gadm<-getData('GADM', country='Italy', level=2)
bbPoints <- bbox(gadm) 
gmap <- get_map(c(bbPoints), maptype='watercolor', source='stamen', crop=FALSE)

bbMap <- attr(gmap, 'bb')

height <- with(bbMap, ur.lat - ll.lat)
width <- with(bbMap, ur.lon - ll.lon)
latCenter <- with(bbMap, ll.lat + ur.lat)/2
lonCenter <- with(bbMap, ll.lon + ur.lon)/2

spplot(gadm, "PID",border="green",col=NA)+
layer(grid.raster(gmap,x=lonCenter, y=latCenter,
width=width, height=height,
default.units='native'), under = TRUE)

为了使图层居中,我遵循了本教程:http://www.r-bloggers.com/stamen-maps-with-spplot/

我不明白为什么自动居中不起作用

这是一个与 ggmap 返回的对象的投影(或不投影)相关的问题。在 this thread and a tutorial 中使用 dismo::gmap 对此进行了有趣的讨论。我必须更新我的博客 post 以包含此问题。