作者:SuperBaby蜜 | 来源:互联网 | 2022-12-02 18:42
过去,我已经多次使用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
get_map()
正如我希望通过ggmap命令进行的那样,在自动进行地理编码的过程中没有运气。
我求助于手动指定此地图焦点的纬度/经度坐标。
qmap(location=c(lon=-77.035,lat=38.897), zoom = 14, source = "google")
感谢camille提醒我开放街道地图(osm)源存在已知问题(通常与我一起进行故障排除)。
我已经尝试在几种不同的机器上,在几种不同的网络上进行尝试,只是因为看来某些人在此问题的根源上遇到了本地网络/计算机问题。现在想知道是否有人能够qmap()
不再使用纬度/经度坐标来指定位置,还是这个问题对我来说是唯一的。
1> Roman..:
更新于2019-04-06:
=============================================
使用ggmap
地理编码但不使用Google API的替代解决方案:
library(ggmap)
library(tmaptools)
ggmap(get_stamenmap(rbind(as.numeric(paste(geocode_OSM("Vienna")$bbox))), zoom = 11))