从地图 R 内的图表中删除边框
Remove border from charts inside a map R
我正在尝试通过以下方式在地图中添加一些饼图:
library(tmaptools)
library(ggplot2)
library(dplyr)
library(tidyr)
library(tmap)
library(sf)
data(NLD_prov)
origin_data <- NLD_prov %>%
st_set_geometry(NULL) %>%
mutate(FID= factor(1:n())) %>%
select(FID, origin_native, origin_west, origin_non_west) %>%
gather(key=origin, value=perc, origin_native, origin_west, origin_non_west, factor_key=TRUE)
origin_cols <- get_brewer_pal("Dark2", 3)
grobs <- lapply(split(origin_data, origin_data$FID), function(x) {
ggplotGrob(ggplot(x, aes(x="", y=-perc, fill=origin)) +
geom_bar(stat="identity", width=1, color="white") +
coord_polar("y", start=0) +
scale_y_continuous(expand=c(0,0)) +
scale_fill_manual(values=origin_cols) +
theme_ps(plot.axes = FALSE))
})
names(grobs) <- NLD_prov$name
tm_shape(NLD_prov) +
tm_polygons(group = "Provinces") +
tm_symbols(size=1, shape="name",
shapes=grobs,
scale=1,
legend.shape.show = FALSE,
shapes.legend = 22) +
tm_add_legend(type="fill",
col=origin_cols,
labels=c("Native", "Western", "Non-western"),
title="Origin") +
tm_format("NLD")
但是,我无法去除饼图周围的黑色边框。我尝试对主题添加一些修改但没有成功。我怎样才能去除这些边框?
添加 border.lwd = NA
作为 tm_symbols()
的参数。 documentation 状态:
border.lwd: line width of the symbol borders. If NA, no symbol borders
are drawn.
我正在尝试通过以下方式在地图中添加一些饼图:
library(tmaptools)
library(ggplot2)
library(dplyr)
library(tidyr)
library(tmap)
library(sf)
data(NLD_prov)
origin_data <- NLD_prov %>%
st_set_geometry(NULL) %>%
mutate(FID= factor(1:n())) %>%
select(FID, origin_native, origin_west, origin_non_west) %>%
gather(key=origin, value=perc, origin_native, origin_west, origin_non_west, factor_key=TRUE)
origin_cols <- get_brewer_pal("Dark2", 3)
grobs <- lapply(split(origin_data, origin_data$FID), function(x) {
ggplotGrob(ggplot(x, aes(x="", y=-perc, fill=origin)) +
geom_bar(stat="identity", width=1, color="white") +
coord_polar("y", start=0) +
scale_y_continuous(expand=c(0,0)) +
scale_fill_manual(values=origin_cols) +
theme_ps(plot.axes = FALSE))
})
names(grobs) <- NLD_prov$name
tm_shape(NLD_prov) +
tm_polygons(group = "Provinces") +
tm_symbols(size=1, shape="name",
shapes=grobs,
scale=1,
legend.shape.show = FALSE,
shapes.legend = 22) +
tm_add_legend(type="fill",
col=origin_cols,
labels=c("Native", "Western", "Non-western"),
title="Origin") +
tm_format("NLD")
但是,我无法去除饼图周围的黑色边框。我尝试对主题添加一些修改但没有成功。我怎样才能去除这些边框?
添加 border.lwd = NA
作为 tm_symbols()
的参数。 documentation 状态:
border.lwd: line width of the symbol borders. If NA, no symbol borders are drawn.