R + OpenStreetMap + ggplot2 +更改刻度线

时间:2013-10-10 08:40:40

标签: r ggplot2 openstreetmap

我正在尝试操纵英国地图中的轴刻度标记

map = openmap(upperLeft = c(60,-11), 
              lowerRight = c(49.5,3), type="mapquest-aerial")
map2 <- openproj(map)
autoplot(map2) +
  xlab("Longitude") + ylab("Latitude")

enter image description here 我尝试添加这样的东西:

  scale_x_continuous(breaks=seq(-10,2,2), labels=paste(c(rev(seq(0,10,2)),2),c(rep("°W",5),"°","°E"),sep=""))

我会收到一条错误消息: 'x'的比例已经存在。为'x'添加另一个比例,它将取代现有比例。

(可能是因为比例是在地图对象中设置的),虽然它会附加标签,但轴会移动并在图的左右两侧创建一个间隙: enter image description here 有谁知道我怎么能摆脱这个灰色空间???

R版本3.0.0 平台:i386-w64-mingw32 / i386(32位)

1 个答案:

答案 0 :(得分:4)

您收到有关已存在的x轴的警告,因为函数autoplot.OpenStreetMap()(实际上由autoplot()调用)已经定义了scale_x_continuous()。所以你正在制作新的x轴。

只需在比例函数中添加参数expand=c(0,0)即可删除灰色区域。此参数包含在autoplot()使用的缩放函数中。

 +scale_x_continuous(breaks=seq(-10,2,2), labels=paste(c(rev(seq(0,10,2)),2),
                                c(rep("°W",5),"°","°E"),sep=""),expand=c(0,0))