gpt4 book ai didi

r - 使用 tmap 在形状上弹出

转载 作者:行者123 更新时间:2023-12-04 14:29:52 24 4
gpt4 key购买 nike

我做了一张 map unsing tmap使用 leaflet 包含在 Shiny 的应用程序中.我大致有我想要的:基于 SpatialPolygonsDataFrame 的带有填充颜色的专题 map ,当您单击 map 时,会弹出一个包含多边形额外信息的弹出窗口。我想在单击时更改弹出窗口以获得更好的布局。默认情况下,会显示数据集中的名称,但这对用户来说并不友好。
这是一个可重现的示例。

library(tmap)
library(leaflet)

data(Europe)

tmap_mode("view")
carte <- tm_shape(Europe) +
tm_borders(alpha = 0.5) +
tm_fill(col = "well_being",
id = "name",
popup.vars = c("life_exp","well_being"))
tmap_leaflet(carte)

我试图命名向量( popup.vars = c("Life Expectancy" = "life_exp", "Well being" = "well_being) ,但这不起作用。
我还尝试在拨打 leaflet::addPolygons 时添加弹出窗口,但我收到一条错误消息。
carte2 <- tm_shape(Europe) +
tm_borders(alpha = 0.5) +
tm_fill(col = "well_being")

nom <- Europe$name

tmap_leaflet(carte2) %>%
addPolygons(layerId = nom,
popup = paste0("<b>",~name,"</b><br/>Life Expectancy : ",
~life_exp," <br/>Well being : ", ~well_being))

Error in derivePolygons(data, lng, lat, missing(lng), missing(lat), "addPolygons") : Polygon data not found; please provide addPolygons with data and/or lng/lat arguments



谢谢

最佳答案

在开发版本中,popup.vars 的向量名称现在用作标签。此外,我已将 popup.format 添加到每个图层功能。您可以分别为每个变量指定数字格式。

data(World, metro)
metro$growth <- (metro$pop2020 - metro$pop2010) / (metro$pop2010 * 10) * 100

ttm()
tm_shape(metro) +
tm_bubbles("pop2010", col = "growth",
border.col = "black", border.alpha = .5,
style="fixed", breaks=c(-Inf, seq(0, 6, by=2), Inf),
palette="-RdYlBu", contrast=1,
title.size="Metro population",
title.col="Growth rate (%)", id="name",
popup.vars=c("Population (2010)"="pop2010", "Population (2020)"="pop2020", "Growth (%)"="growth"),
popup.format=list(growth=list(digits=4)))

enter image description here

关于r - 使用 tmap 在形状上弹出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41940403/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com