数据格式: #数据储存在gene_exp.csv文件里 Gene A1 B1 C1 Gene1 20.381824 20.381824 10.381824 Gene1 21.96907 21.96907 11.96907 Gene1 19.19391 19.19391 9.19391 Gene2 0.532916 8.96025 30.00767639 Gene2 0.00767639 8.02883 29.0406903 Gene2 0.0406903 10.0192096 29.0192096
代码如下: library(grafify) library(ggplot2) library(ggsignif)
dt <- read.csv('gene_exp.csv') dt1 <- reshape2::melt(dt, id.vars = 'Gene', variable.name = 'Type', value.name = 'Value') #柱状图 plot_scatterbar_sd(data = dt1, xcol = Type, ycol = Value, symsize = 3, fontsize = 13, # symsize: 散点的大小; fontsize: 字体大小 bwid = 0.6, ewid = 0.4,# bwid: 条形的宽度; # ewid: 误差线的宽度 b_alpha = 0.5, s_alpha = 0.8,# b_alpha: 条形的透明度 # s_alpha: 散点的透明度 jitter = 0.2, # jitter: 数据点的抖动量 ColPal = 'okabe_ito') # ColPal: 颜色调色板 labs(title = 'scatterbar_sd') facet_wrap('Gene') #根据'Gene'列分面 geom_signif(mapping = aes(x = Type, y = Value), # 显著性线的映射 comparisons = list(c('A1', 'B1'), c('B1', 'C1'), c('A1', 'C1')), # 两两比较 map_signif_level = TRUE, # 映射显著性水平 tip_length = c(0, 0, 0), # 显著性线的长度 y_position = c(28, 29.5, 31), # 显著性线的纵坐标位置 size = 0.5, # 显著性线的粗细 textsize = 4, # 显著性标记的大小 test = 't.test') #散点图 plot_scatterbox(data = dt1, xcol = Type, ycol = Value, symsize = 3, fontsize = 13, bwid = 0.6, ewid = 0.4, b_alpha = 0.5, s_alpha = 0.8, jitter = 0.2, ColPal = 'okabe_ito') labs(title = 'plot_scatterbox') facet_wrap('Gene') geom_signif(mapping = aes(x = Type, y = Value), comparisons = list(c('A1', 'B1'), c('B1', 'C1'), c('A1', 'C1')), map_signif_level = TRUE, tip_length = c(0, 0, 0), y_position = c(28, 29.5, 31), size = 0.5, textsize = 4, test = 't.test')
输出结果: 

|