宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

假设我们现在有CC,CG,GG三种基因型及三种基因型对应的表型,我们现在想要画出不同的基因型对应表型的棒状图及误差棒。整个命令最重要的就是最后一句了,用arrows函数画误差棒。用到的R语言如下:

data<-read.csv"E:/model/data.csv",sep=" ",header=T)#导入数据data
mean_CC<-meandata[,1])#计算CC基因型对应的表型的平均值
mean_GG<-meandata[,2])
mean_GC<-meandata[,3])
install.packages"plotrix")#安装plotrix包计算标准误
library"plotrix")
SE_CC<-std.errordata[,1])#计算CC基因型对应表型平均值的标准误
SE_GG<-std.errordata[,2])
SE_GC<-std.errordata[,3])
density<-cmean_CC,mean_GC,mean_GG)#画分布图
snp_name<-c"CC","GC","GG")
barCenters<-barplotbeside=T,density,snp_name,border="black",col=c"purple","green3","blue"),density=c5,5,5),width=c2,2,2),space=c1.5,1.5,1.5),ylim=c0,10))#beside:逻辑参数。如果FALSE,那么将绘画堆叠式的条形;如果是TRUE,将绘画并列式条形。space:表示棒状图直接的距离,ylim:表示Y轴的取值范围
d<-data.framesnp_name<-c"CC","GC","GG"),SE<-c0.038,0.130,0.594),mean<-c5.44,5.88,6.36))#创建一个基因型平均值及标准误的数据框
titlexlab="Genotype",ylab="Density",main="Density in rs141626761",cex.lab=1.5,cex.main = 2.5, font.main= 2)#cex.lab坐标轴字体大小
arrowsbarCenters,d$mean-d$SE*2,barCenters,d$mean+d$SE*2, length=0.05, angle=90, code=3)#用arrows函数画误差棒

效果图如下:

R语言画棒状图(bar chart)和误差棒(error bar)-风君子博客