跟着 Cell 学作图 | 2.柱状图+误差棒+散点
数据格式
表一用于制作散点图
2021.4.14_2
表二用于制作柱状图。(对表一进行统计)
2021.4.14_3
注:以上数据纯属虚构,无实际意义!
思路
柱状图+显著性检验+误差棒+散点
绘制
--- title: "barplot" author: "MZBJ" date: "2020/4/14" --- # 导入所需的包 library(ggplot2) library(ggsignif) library(ggpubr) setwd("F:/HJH/mzbj/cell") # 导入数据 plot_data1 <- read.csv(file = "NPT_sod.csv") plot_data2 <- read.csv(file = "NPT.csv") #----------------------- p<- ggplot()+ geom_bar(data=plot_data1,mapping=aes(x=group,y=mean), #柱状图 fill = "white", size = 1.5, color = c("#1E90FF","gold","red"), position="dodge", # 柱状图格式 stat="identity", # 数据格式 width = 0.6)+ # 柱状图尺寸 geom_jitter(data=plot_data2, #散点 mapping=aes(x=group,y=Retive_Abundance,fill = group,colour = group,shape = group), size = 2, height = 0.05,#散点纵向抖动 width = 0.1)+ #散点横向抖动 scale_color_manual(values = c("#1E90FF","gold","red"))+ #散点颜色 geom_signif(data=plot_data2,mapping=aes(x=group,y=Retive_Abundance), # 不同组别的显著性 comparisons = list(c("N", "P"), # 哪些组进行比较 c("N", "T"), c("P", "T")), annotation=c("**"), # 显著性差异做标记 map_signif_level=T, # T为显著性,F为p value tip_length=c(0,0,0,0,0,0), # 修改显著性线两端的长短 y_position = c(46,54,49), # 设置显著性线的位置高度 size=1, # 修改线的粗细 textsize = 7, # 修改*标记的大小 test = "t.test")+ # 检验的类型 geom_errorbar(data=plot_data1,mapping=aes(x = group,ymin = mean-sd, ymax = mean+sd), # 误差线添加 width = 0.3, #误差线的宽度 color = c("#1E90FF","gold","red"), #颜色 size=0.8)+ #粗细 scale_y_continuous(limits =c(0, 60) ,expand = c(0,0))+ # y轴的范围 theme_classic( # 主题设置,这个是无线条主题 base_line_size = 1 # 坐标轴的粗细 )+ labs(title="White blood cell(WBC)",x="",y="Retive_Abundance")+ # 添加标题,x轴,y轴内容 theme(plot.title = element_text(size = 15, colour = "black", hjust = 0.5), axis.title.y = element_text(size = 15, # family = "myFont", color = "black", face = "bold", vjust = 1.9, hjust = 0.5, angle = 90), legend.title = element_text(color="black", # 修改图例的标题 size=15, face="bold"), legend.text = element_text(color="black", # 设置图例标签文字 size = 10, face = "bold"), axis.text.x = element_text(size = 13, # 修改X轴上字体大小, color = "black", # 颜色 face = "bold", # face取值:plain普通,bold加粗,italic斜体,bold.italic斜体加粗 vjust = 0.5, # 位置 hjust = 0.5, angle = 0), #角度 axis.text.y = element_text(size = 13, color = "black", face = "bold", vjust = 0.5, hjust = 0.5, angle = 0) ) p
大功告成!