gpt4 book ai didi

R tmap,图例格式 - 在第一个图例键中显示单个值

转载 作者:行者123 更新时间:2023-12-02 17:51:39 24 4
gpt4 key购买 nike

我不确定如何或是否可以通过以下方式调整关键图例。考虑这个例子:

library(tmap)
data(Europe)

my_map <-
tm_shape(Europe) +
tm_polygons("well_being", textNA="Non-European countries", title="Well-Being Index") +
tm_text("iso_a3", size="AREA", root=5) +
tm_layout(legend.position = c("RIGHT","TOP"),
legend.frame = TRUE)

enter image description here

我尝试了legend.format = list(scientific = TRUE),例如:

my_map2 <- my_map +
tm_layout(legend.format = list(scientific = TRUE))

这给出了一个图例:

enter image description here

但是,我希望的是:

enter image description here

在我的数据中,4 是零,我被要求将其单独显示为零。

最佳答案

据我所知,单独使用 tmap 图例格式是不可能的 - 总会有小分隔符。 “to”或者您使用 legend.format 调用中的 text.separator 覆盖它的任何内容。

您需要的是数据处理中的一个额外步骤 - 您必须使用标签创建一个特殊变量,并根据此进行绘图。您可以完全控制各个级别,因此您可以将第一个级别作为独立的零。

为了简单起见,我使用 ifelse 分为两个级别(加上非欧洲国家的 NA),但您可以得到比这更奇特的...

Europe <- Europe %>%
st_as_sf() %>% # from sf package - makes Europe behave as a data.frame
mutate(well_being_adj = ifelse(well_being < 5, "0", "more than five"))

my_map <-
tm_shape(Europe) +
tm_polygons("well_being_adj", textNA="Non-European countries", title="Well-Being Index") +
tm_text("iso_a3", size="AREA", root=5) +
tm_layout(legend.position = c("RIGHT","TOP"),
legend.frame = TRUE)
print(my_map)

enter image description here

关于R tmap,图例格式 - 在第一个图例键中显示单个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49174364/

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