【问题标题】:Plot MULTILINESTRING using leaflet使用传单绘制 MULTILINESTRING
【发布时间】:2020-08-02 16:07:50
【问题描述】:

我对 R 中的传单和映射相当陌生。我正在尝试可视化 R 中某些多线串的流量。我找到的最接近的答案是:

How to plot MULTILINESTRING in leaflet addPolylines?

但我想根据它们的数量或数量来映射这些多线串。我的多行字符串数据最初是字符,所以我使用“sf”库将它们转换为 sfc_multilinestring。可以找到原始数据集here

我的样本数据:

data <- data.frame(
    multilinestring = c("MULTILINESTRING ((-114.06036700906716 51.04831941917631, -114.05790835100508 51.04824965329041))", "MULTILINESTRING ((-114.06876825342002 50.96863425573366, -114.0714654457777 50.96864796962547))", "MULTILINESTRING ((-114.03372206187294 51.053232488239935, -114.03370889695204 51.05088210489753))"),
    VOLUME = c(22000,5000,5000))

转换为 sfc_MULTILINESTRING 后

data$geom <- st_as_sfc(data$multilinestring)

我在链接中尝试了相同的代码(我在上面分享了),但我无法确定颜色强度。

leaflet((data$geom) %>% 
  addTiles() %>% 
  addPolygons() 

上面的代码绘制了多线字符串,但我不知道如何根据它们的 VOLUME 更改多线字符串的颜色强度。

这是我最终想要得到的(使用我的完整数据集):

http://www.gisresources.com/free-u-s-traffic-count-data-use-maptitude-2018-mapping-software/

这是我的系统和 R 版本:

平台 x86_64-w64-mingw32
拱 x86_64
操作系统 mingw32
系统 x86_64、mingw32
状态
专业 4
次要 0.2
svn 版本 78730
语言 R
version.string R 版本 4.0.2 (2020-06-22)

【问题讨论】:

标签: r leaflet spatial


【解决方案1】:

您可以这样做。需要指出的几点:

  • 我使用st_as_sf(),它将数据帧转换为sf对象。
  • 对于 Leaflet,您必须创建自己的调色板 (colorNumeric())
  • 我将整个 sf 对象传递给对 leaflet() 的调用
data <- data.frame(
  multilinestring = c("MULTILINESTRING ((-114.06036700906716 51.04831941917631, -114.05790835100508 51.04824965329041))", "MULTILINESTRING ((-114.06876825342002 50.96863425573366, -114.0714654457777 50.96864796962547))", "MULTILINESTRING ((-114.03372206187294 51.053232488239935, -114.03370889695204 51.05088210489753))"),
  VOLUME = c(22000,5000,5000)
)
data$geom <- st_as_sfc(data$multilinestring)
data <- st_as_sf(data)

pal <- colorNumeric(
  palette = "Reds",
  domain = data$VOLUME
)

leaflet(data) %>% 
  addTiles() %>%
  addPolylines(color = ~pal(VOLUME))

最后,您需要自定义您的调色板,因为低容量链接以难以看到的浅色显示。请参阅此处获取更多指导:https://rstudio.github.io/leaflet/colors.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多