ggmap坏了吗?基本的qmap()产生“参数暗示不同的行数:0,1”

时间:2018-10-08 14:40:07

标签: r ggmap

我过去多次使用ggmap来生成以特定坐标为焦点的地图。通常,它很简单,就是通过 qmap()中的 location = 参数定义焦点,然后根据需要在地图上添加几何图形。

今天,我是一段时间内第一次打开ggmap,但它无法成功执行最基本的映射任务。

    devtools::install_github("dkahle/ggmap") #Making sure I'm up-to-date
    library(ggmap)
    qmap(location = "White House", zoom = 14, source = "osm")

产生以下错误:

#Error in data.frame(ll.lat = ll[1], ll.lon = ll[2], ur.lat = ur[1], ur.lon = ur[2])
 : arguments imply differing number of rows: 0, 1

我已经闲逛了几个小时。我尝试改用 get_map(),但是会产生相同的错误。

有什么想法吗?

更新#1

我已经进行了R / RStudio的全新安装,从全新的版本(devtools,tidyverse,ggmap)重新安装软件包。但是,错误仍然存​​在。

更新#2

正如我希望通过ggmap命令所希望的那样,在get_map()的过程中获得自动进行地理编码的位置并不算运气。

我要手动指定此地图焦点的纬度/经度。

qmap(location=c(lon=-77.035,lat=38.897), zoom = 14, source = "google")

感谢camille提醒我开放街道地图(osm)源存在已知问题(通常与我一起进行故障排除)。

我已经尝试在几台不同的计算机上,几台不同的网络上运行,只是因为似乎有些人是此问题的根源所在。现在,我们想知道是否有人能够在没有纬度/经度坐标的情况下指定qmap()中的位置,还是这个问题对我来说是唯一的。

1 个答案:

答案 0 :(得分:4)

更新于2019-04-06:

============================================

使用ggmap 进行地理编码但不使用Google API的替代解决方案

library(ggmap)
library(tmaptools)
ggmap(get_stamenmap(rbind(as.numeric(paste(geocode_OSM("Vienna")$bbox))), zoom = 11))

Vienna Map