指定具有多个停靠点的路径

时间:2014-12-28 21:29:56

标签: r ggmap

我尝试使用具有多个停靠点的ggmap在Google地图上绘制路线。我使用下面的代码。

library("ggmap")

legs_df <- route('The Blackhouse Grill, 19 Newgate Street, Chester CH1 1DE, United Kingdom',
  c('CH2 3GH, Chester, UK',
  'CH3 3ET, Chester, UK','CH2 1ET, Chester, UK'),mode = c("walking")
)

qmap('Chester, UK', zoom = 15, maptype = 'hybrid',
     base_layer = ggplot(aes(x = startLon, y = startLat), data = legs_df)) +
  geom_leg(aes(x = startLon, y = startLat, xend = endLon, yend = endLat,
        colour = route),
    alpha = 2/4, size = 2, data = legs_df) 

问题是我收到错误,不知道如何自动选择类型函数对象的比例。默认为连续

  

data.frame中的错误(x = c(-2.8886032,-2.8884907,-2.8822871,-2.875769,:
)     参数意味着不同的行数:8,0

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

问题在于您指定颜色的方式。如果您不想以不同的颜色为每条腿着色,那么您应该在aes函数之外指定颜色,如下所示:

qmap('Chester, UK', zoom = 15, maptype = 'hybrid',
     base_layer = ggplot(aes(x = startLon, y = startLat), data = legs_df)) +
  geom_leg(aes(x = startLon, y = startLat, xend = endLon, yend = endLat),
           alpha = 2/4, size = 2, data = legs_df, colour = 'red') 

结果是:

enter image description here

您获得的错误是因为您指定了route作为颜色,route是一个函数。所以它不知道如何将函数映射为颜色。