R 中的 ggmap 和 mapview 包有问题吗?
Is something wrong with the ggmap and mapview packages in R?
去年夏天,我在 R 中编写代码,其中使用了包 mapview
和 ggmap
。在夏天,代码运行良好。上周我 运行 代码没有任何更改,当我使用 mapview
:
时收到以下消息
mapview(as(tr10, "Spatial"), zcol = "utc_timestamp", lwd = 5,
legend = TRUE)
Error in htmlwidgets::sizingPolicy(defaultWidth = defaultWidth, defaultHeight = defaultHeight, :
unused argument (browser.external = FALSE)
我没有对我的代码进行任何更改,我升级了包以防万一,但仍然无法正常工作。使用 ggmap
我得到以下信息:
puerto_rico <- get_map(location = c(lon = mean(long), lat = mean(lat)),
maptype = "terrain", source = "google",
zoom = 12)
Error in download.file(url, destfile = tmp, quiet = !messaging, mode = "wb") :
cannot open URL 'http://maps.googleapis.com/maps/api/staticmap?center=18.2,-67.1&zoom=12&size=640x640&scale=2&maptype=terrain&language=en-EN&sensor=false'
In addition: Warning message:
In download.file(url, destfile = tmp, quiet = !messaging, mode = "wb") :
cannot open URL 'http://maps.googleapis.com/maps/api/staticmap?center=18.2,-67.1&zoom=12&size=640x640&scale=2&maptype=terrain&language=en-EN&sensor=false': HTTP status was '403 Forbidden'
有人可以解释一下这些包发生了什么,以及我还有哪些其他选择可以让我访问地图对我的地块的使用?
Google 加强了对 API 访问 Google 地图产品的控制。这意味着您现在需要 Google API 密钥才能使用 ggmap()。
涉及几个步骤:
- 访问 https://console.cloud.google.com 并创建一个新项目。
- 设置一个API键:导航菜单 -> APIs and services -> Library
-> 静态地图 API
- 创建一个计费帐户并为 API 密钥启用计费。您将需要提供信用卡详细信息,但无需支付任何费用。最好对如何使用 API 密钥来防止盗窃设置一些限制——如果您不共享您的代码,最简单的方法可能是将它限制为来自您自己的 IP 地址的请求。
- 为此 api 键启用静态地图。
- 在 R 中,运行
register_google("<your API key>")
。您将需要 运行 这个
对于您将在其中使用 ggmap() 的每个新会话。我已将其添加到我的 .Rprofile。
祝你好运!
去年夏天,我在 R 中编写代码,其中使用了包 mapview
和 ggmap
。在夏天,代码运行良好。上周我 运行 代码没有任何更改,当我使用 mapview
:
mapview(as(tr10, "Spatial"), zcol = "utc_timestamp", lwd = 5,
legend = TRUE)
Error in htmlwidgets::sizingPolicy(defaultWidth = defaultWidth, defaultHeight = defaultHeight, :
unused argument (browser.external = FALSE)
我没有对我的代码进行任何更改,我升级了包以防万一,但仍然无法正常工作。使用 ggmap
我得到以下信息:
puerto_rico <- get_map(location = c(lon = mean(long), lat = mean(lat)),
maptype = "terrain", source = "google",
zoom = 12)
Error in download.file(url, destfile = tmp, quiet = !messaging, mode = "wb") :
cannot open URL 'http://maps.googleapis.com/maps/api/staticmap?center=18.2,-67.1&zoom=12&size=640x640&scale=2&maptype=terrain&language=en-EN&sensor=false'
In addition: Warning message:
In download.file(url, destfile = tmp, quiet = !messaging, mode = "wb") :
cannot open URL 'http://maps.googleapis.com/maps/api/staticmap?center=18.2,-67.1&zoom=12&size=640x640&scale=2&maptype=terrain&language=en-EN&sensor=false': HTTP status was '403 Forbidden'
有人可以解释一下这些包发生了什么,以及我还有哪些其他选择可以让我访问地图对我的地块的使用?
Google 加强了对 API 访问 Google 地图产品的控制。这意味着您现在需要 Google API 密钥才能使用 ggmap()。
涉及几个步骤:
- 访问 https://console.cloud.google.com 并创建一个新项目。
- 设置一个API键:导航菜单 -> APIs and services -> Library -> 静态地图 API
- 创建一个计费帐户并为 API 密钥启用计费。您将需要提供信用卡详细信息,但无需支付任何费用。最好对如何使用 API 密钥来防止盗窃设置一些限制——如果您不共享您的代码,最简单的方法可能是将它限制为来自您自己的 IP 地址的请求。
- 为此 api 键启用静态地图。
- 在 R 中,运行
register_google("<your API key>")
。您将需要 运行 这个 对于您将在其中使用 ggmap() 的每个新会话。我已将其添加到我的 .Rprofile。
祝你好运!