分面

  facet_wrap(~ merge_data$V1) +
    theme(
    panel.grid = element_blank(),
    panel.background = element_blank(),
    axis.line = element_line(size = 0.5, color = "black"),
    axis.text.x = element_text(size = "20px"),
    axis.text.y = element_text(size = "10px"),
    axis.title.y = element_text(size = "15px"),
    legend.title = element_blank(),
    legend.text = element_text(size = "15px"),
    strip.text = element_text(size = "15px",
      face = "bold"), #设置分面标题
      strip.background = element_rect(fill = "#d2dae2") #设置分面背景
  )

指定分面行列数

  • facet_wrap单因子分面函数

facet_wrap(~V3,nrow = 3,ncol = 1)

分别给每个分面添加注释

参考 https://bbs.pinggu.org/thread-6402532-1-1.html

需要建一个注释的数据框,并且数据框需要包含一个分面变量

df1<-data.frame(V1=c('A2','At','D5','Dt'),
                label=c('a','b','c','d'),
                x=c(5,5,5,5),
                y=c(35,35,35,35)
                )
##分面注释
  facet_wrap(~V1,nrow=2)+
  geom_text(data=df1,
            aes(x,y,label),
            size = 12)+

在分面注释中使用特殊字符

借助于expression函数,由于在数据框中只能是数字或字符,因此在映射的时候还是得把label单独挑出来

expression()中的下标为[],上标为^,空格为~,连接符为*。示例代码如下:

  geom_text(data=df1,
            aes(x,y,),
            label=c(expression(paste('a\n',r^2,'=',sep="\n")),
                    expression(paste('b\n',r^2,'=',sep="\n")),
                    expression(paste('c\n',r^2,'=',sep="\n")),
                    expression(paste('d\n',r^2,'=',sep="\n"))),
              size = 5)

Last updated