我正在尝试使用get_map()函数在R中为特定位置绘制一个简单地图。以下是我的代码:
例如
get_map(location = "texas", zoom = 10, source = "google")
我尝试了不同的参数。我收到的错误如下:
Error in aperm.default(map, c(2, 1, 3)) :
perm' is of wrong length 3 (!= 2)
后台到底发生了什么,该如何解决?我检查了所有可能的博客,似乎没有人收到此错误。
请帮助!
答案 0 :(得分:0)
由于基本URL而发生此错误。在CRAN version
中,基本URL不安全。
使用来自{github}的此程序包的dev版本来代替&函数运行正常。
使用devtools::install_github(""dkahle/ggmap")
从github安装库
答案 1 :(得分:0)
我使用的是github上的ggmap,但是在这里面临着同样的问题...
> devtools::install_github("dkahle/ggmap")
Skipping install of 'ggmap' from a github remote, the SHA1 (7b696967) has not changed since last install.
Use `force = TRUE` to force installation
> library(ggmap)
Carregando pacotes exigidos: ggplot2
Google's Terms of Service: https://cloud.google.com/maps-platform/terms/.
Please cite ggmap if you use it! See citation("ggmap") for details.
> register_google(key = "MyKey")
> geocode("parque do ibirapuera")
Source : https://maps.googleapis.com/maps/api/geocode/json?address=parque+do+ibirapuera&key=xxx-mKaA7Kw
# A tibble: 1 x 2
lon lat
<dbl> <dbl>
1 -46.7 -23.6
> get_map(location = "texas", zoom = 10, source = "google")
Source : https://maps.googleapis.com/maps/api/staticmap?center=texas&zoom=10&size=640x640&scale=2&maptype=terrain&language=en-EN&key=xxx-mKaA7Kw
Error in aperm.default(map, c(2, 1, 3)) :
primeiro argumento inválido: deve ser um array
Além disso: Warning message:
In get_googlemap(center = location, zoom = zoom, maptype = maptype, :
HTTP 400 Bad Request
>
答案 2 :(得分:0)
直接导航到生成的URL,您应该看到另一条错误消息,该消息可能更有用:
https://maps.googleapis.com/maps/api/staticmap?center=31,-97&zoom=10&size=640x640&scale=2&maptype=terrain&language=en-EN&key=<INSERT_YOUR_KEY>
就我而言,它表示我的API密钥对此API无效,尽管到那时为止,该错误仅代表
Error in aperm.default(map, c(2, 1, 3)) :
invalid first argument, must be an array
和
HTTP 400 Bad Request
答案 3 :(得分:-1)
我遇到了同样的问题,并且更新了我的Google api密钥。