2

我试图在地图周围没有框架的情况下制作两个德国的倍数——我设法做到了。但是,每个倍数都应该有一个标签,我不知道如何控制面板标签周围的框架。
有什么方法可以控制标签框架,还是我必须切换到 ggplot ?

library(sp)
library(tmap)
library(RColorBrewer)

ID <- 1:16

Anzahl <- sample(10:80, 16)
AnzahlVF <- sample(50:200, 16)
Arbeitsort <- as.data.frame(cbind(ID, Anzahl, AnzahlVF))

Arbeitsort$relAnzahl <- Arbeitsort$Anzahl / sum(Arbeitsort$Anzahl)
Arbeitsort$relAnzahlVF <- Arbeitsort$AnzahlVF / sum(Arbeitsort$AnzahlVF)

ger <- sp::merge(x = germany, y=Arbeitsort, by.x = "ID_1", by.y = "ID")

pal <- brewer.pal(8, "Purples")

tm_shape(ger)+
  tm_polygons(c("relAnzahl", "relAnzahlVF"), title = "students",
              palette = pal)+
  tm_layout(panel.labels = c("1. Map", "2. Map"),
            panel.label.bg.color = NA,
            legend.format = list(text.separator = "bis"),
            legend.outside = T,
            frame = F)+
  tm_legend(position = c("left", "top"))
4

1 回答 1

1

因此,如果我理解正确,您想禁用面板标签边框吗?目前还没有选择。在您的情况下,有两个调整:

1 您可以使用 title 参数代替panel.labels,但这仅在图例放置在地图内时有效。所以调整是使用禁用图例,并使用单独绘制图例tm_layout(legend.only = TRUE)

2 您可以使用tm_credits(c("1. Map", "2. Map"), position = c("center", "top")),但您必须增加 inner.margins (tm_layout) 的第三个值。

于 2018-05-17T00:07:29.873 回答