软件包“RgoogleMaps”HTTP状态为“403 Forbidden”时出错

时间:2014-02-14 14:25:19

标签: r rgooglemaps

我正在尝试使用RgoogleMaps制作地图。我的代码今天上午工作,但现在我收到了这个错误:

map.lyon <- GetMap(center=c(45.77338,4.856039), zoom = 15, destfile = "tile1.png", maptype = "mobile")
Error in download.file(url, destfile, mode = "wb", quiet = TRUE) :
  cannot open URL 'http://maps.google.com/maps/api/staticmap?center=45.77338,4.856039&zoom=15&size=640x640&maptype=mobile&format=png32&sensor=true'
    In addition: Warning message:
    In download.file(url, destfile, mode = "wb", quiet = TRUE) :
      cannot open: HTTP status was '403 Forbidden'

今天早上我制作了很多地图(可能大约200张),Google Maps API的请求是否有限制?

我还尝试使用OpenStreetMaps而不是谷歌地图,总是使用RgoogleMaps包但这也不起作用(尽管它只是网站上找到的代码的一个简单示例),错误非常相似,这里是代码:

library(RgoogleMaps)
lat_c<-51.47393
lon_c<-7.22667
bb<-qbbox(lat = c(lat_c[1]+0.01, lat_c[1]-0.01), lon = c(lon_c[1]+0.03, lon_c[1]-0.03))
OSM.map<-GetMap.OSM(lonR=bb$lonR, latR=bb$latR, scale = 20000, destfile="bochum.png")

以下是我运行时的内容:

   > library(RgoogleMaps)
   > lat_c<-51.47393
   > lon_c<-7.22667
   > bb<-qbbox(lat = c(lat_c[1]+0.01, lat_c[1]-0.01), lon = c(lon_c[1]+0.03, lon_c[1]-0.03))
   > OSM.map<-GetMap.OSM(lonR=bb$lonR, latR=bb$latR, scale = 20000, destfile="bochum.png")
[1] "http://tile.openstreetmap.org/cgi-bin/export?bbox=7.19637,51.46383,7.25697,51.48403&scale=20000&format=png"
trying URL 'http://tile.openstreetmap.org/cgi-bin/export?bbox=7.19637,51.46383,7.25697,51.48403&scale=20000&format=png'
 Error in download.file(url, destfile, mode = "wb", quiet = FALSE) : 
 cannot open URL 'http://tile.openstreetmap.org/cgi-bin/export?bbox=7.19637,51.46383,7.25697,51.48403&scale=20000&format=png'
 In addition: Warning message:
 In download.file(url, destfile, mode = "wb", quiet = FALSE) :
   cannot open: HTTP status was '403 Forbidden'

我不明白问题是什么。我可以使用另一个套餐吗?基本上我只需要有一个背景地图,包括该地区的主要城市和道路,并能够在其上方绘制点。

感谢您的时间。

2 个答案:

答案 0 :(得分:2)

您可以尝试使用ggmap包,它可以让您从google或osm下载地图,然后使用ggplot2添加数据。

答案 1 :(得分:0)

如果你使用RStudio: 1 - 转到工具 2 - 全球选择 3 - 包装 4 - 在CRAN镜像下:点击更改 - 你选择全局(CDN) - RStudio(你选择不同的选项取决于你在哪里)