箱型图

比较不同数据的平均数和p-value值

library(ggplot2)
library(ggpubr)
# 读取文件
dataA <- read.table("A2_At_conserveRate.txt")
dataD <- read.table("D5_Dt_conserveRate.txt")
dataA2 <- read.table("D5_A2_conserveRate.txt")
dataAt <- read.table("At_Dt_conserveRate.txt")
# 增加分组
dataA2$V3 <- "A2_vs_D5"
dataAt$V3 <- "At_vs_Dt"
dataA$V3 <- "At_vs_A2"
dataD$V3 <- "Dt_vs_D5"
# 合并数据
mergeData <- rbind(dataA, dataD, dataA2, dataAt)
# 过滤数据
filteData <- mergeData[mergeData$V2 > 0, ]
## 修改因子水平
filteData$V3 <- factor(filteData$V3, levels = c("At_vs_A2", "Dt_vs_D5", "A2_vs_D5", "At_vs_Dt"))
ggplot(data = filteData, aes(x = V3, y = V2, fill = V3)) +
  geom_violin() +
  #自定义填充色
  scale_fill_manual(values = c(
    "#f6e58d", "#ffbe76", "#686de0", "#4834d4"
    )) +
  geom_boxplot(width = 0.2,
  fill="#ecf0f1", #填充色
  ) +
  theme(
    panel.grid = element_blank(), #网格线为空
    panel.background = element_blank(), #背景色为空
    #坐标轴
    axis.line = element_line(size = 0.5,color="black"),
    axis.text.x = element_text(size = "15"),
    axis.text.y = element_text(size = "10"),
    axis.title.y = element_text(size = "15"),
    legend.position = "none",#隐藏所有图例
  ) +
   #修改坐标轴名称
   ylab("conserve rate")+
   xlab("")+
  stat_compare_means(comparisons = list(
    c("At_vs_A2", "Dt_vs_D5"),
    c("A2_vs_D5", "At_vs_Dt")
  ))

修改显著性水平的高度

修改显著性标记和统计方法

修改显著性星星的数目和大小

隐藏离群

修改箱型图内颜色

修改箱型图内边框粗细

分组箱型图

geom_boxplot内部使用分组变量,使用position=position_dodge(0.8)调整组内间的间距

分组箱型图添加显著性标记

  • tip_length 显著性括号的长度

小提琴图

修改外边框

分组箱型图并添加折线

安装ggpubr的时候出错

由于在R3.x中安装时nloptr编译不通过,指定适用于R3的版本进行安装即可

参考

图例

https://blog.csdn.net/bone_ace/article/details/47284805#%E9%9A%90%E8%97%8F%E6%A0%87%E9%A2%98

https://www.jianshu.com/p/9ae6e06d4947

Last updated

Was this helpful?