TMAP上的多重层

问题描述 投票:1回答:1

我正在尝试制作一个具有不同图层的交互式地图,用户可以在其中选择8个不同图层之一。所有图层的形状完全相同,唯一的变化是圆柱。

理想情况下,我想要这样的东西,但这不起作用,因为可选的交互层来自tm_shape,而不是tm_fill。

library(tmap)

tmap_mode("view") +
 tm_shape(MAP_DATA) +
 tm_fill(col = "COLUMN1") +
 tm_fill(col = "COLUMN2") +
 tm_borders()

我可以解决这个问题,但感觉效率很低:

MAP_DATA2 <- MAP_DATA

tmap_mode("view") +
 tm_shape(MAP_DATA) +
 tm_fill(col = "COLUMN1") +
 tm_borders() +
 tm_shape(MAP_DATA2) +
 tm_fill(col = "COLUMN2") +
 tm_borders()
r maps tmap
1个回答
0
投票

在我看来,如果您想编写更少的代码,则必须牺牲在一张地图上具有多个图层。如果您不介意这种牺牲,则可以执行以下操作。您可以在tm_polygons()中指定要使用的列。您最终将同时拥有四个地图。但是,您不必编写太多代码。最后,我认为是否要编写更多或更少的代码是您的选择。

library(tmap)
tm_shape(NLD_muni) +
tm_polygons(col = c("population", "pop_0_14", "pop_15_24",
                    "pop_25_44")) + 
tm_facets(nrow = 2, sync = TRUE)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.