1

我想使用 R 和 Mapdeck 创建静态地图。我是第一次这样做,在这个阶段我只想要任何 png 地图输出。(最终我想创建包含 50 个州和某些城市的扩展水平条形图的美国地图。)

在下面的网站上,我找到了一个示例代码。目前我只想要这个文件的一个简单的png。我创建了 mapdeck 令牌,我可以毫无错误地运行此代码,但我没有得到任何“查看器”输出来显示我将导出到 png 的地图。我在网上找到了其他 mapdeck/R 代码,它们都没有显示任何视觉效果。

https://geocompr.robinlovelace.net/adv-map.html

library(mapdeck)
set_token(Sys.getenv("MAPBOX"))
df = read.csv("https://git.io/geocompr-mapdeck")
ms = mapdeck_style("dark")
mapdeck(style = ms, pitch = 45, location = c(0, 52), zoom     = 4) %>%
add_grid(data = df, lat = "lat", lon = "lng", cell_size = 1000,
     elevation_scale = 50, layer_id = "grid_layer",
     colour_range = viridisLite::plasma(5))
4

1 回答 1

0

有几个可能的问题

  1. 在 RStudio 查看器中看不到地图的已知问题

解决方案是通过按“在新窗口中打开”按钮在浏览器中打开它

  1. 数据中有NAs,它把你的注意力集中在 (0,0)

解决方案是删除 NA,或者简单地缩小

此外,自从那篇文章撰写以来,该软件包已更新到 v0.2.1,因此对代码进行了一些细微的更改。

df = read.csv("https://git.io/geocompr-mapdeck")

library(mapdeck)

set_token("MAPBOX_TOKEN")
ms = mapdeck_style("dark")

df <- df[ !is.na(df$lat), ]

mapdeck(style = ms, pitch = 45) %>%
  add_grid(data = df, lat = "lat", lon = "lng", cell_size = 1000,
           elevation_scale = 50, layer_id = "grid_layer",
           colour_range = colourvalues::colour_values(1:6, palette = "plasma"))

编辑:更正的代码。

在此处输入图像描述

于 2019-02-06T21:42:24.883 回答