从地图 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_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:符号边框的线宽。如果不适用,则没有符号边界 绘制。