R语言学习笔记 |
您所在的位置:网站首页 › 柱状图的显著性怎么做的 › R语言学习笔记 |
1.计算均值和方差(生成新列表) 这里,以前面单因素方差分析所用的数据为例: 利用aggregate( )函数计算均值和标准差(即误差线) ,方便后面绘制图形和标记显著性: 令aov.mean 令aov.sd 提取sd值: 将均值和sd值合并成一个数据数据框 aov 2.ggplot2包绘制图形 (1)添加误差线 这里使用geom_errorbar( )绘制带有误差棒的条形图(这里一定要注意position要与geom__bar( )保持一致,因为系统默认dodge是0.9,因此geom_errorbar( )里面position 需要设置0.9,width设置误差棒的大小) library(ggplot2) ggplot(data=aov,aes(x=Group.1, y=x))+geom_bar(stat="identity",position="dodge")+geom_errorbar(aes(ymax=x+sd,ymin=x-sd),position=position_dodge(0.9),width=0.15)+scale_fill_brewer(palette="Set1") (2)添加显著性标记 如何在我们的误差线中添加显著性标记值呢(也就是dancan的标记字母法),其实是利用geom_text函数,也就是相当于在数据上添加文本,首先我们需要将想表的字母利用label函数 表达出起来: 第一步:利用aov函数进行单因素方法分析:数据集利用上方z 令fit 再利用agricolae包进行dancan检验: install.packages("agricolae") library(agricolae) out 调用out结果中的groups 组: 将其和sd值结合起来: 利用data_frame函数合并后: 后利用arrange函数根据Group.1进行分类: avo.order 我们发现没有什么变化,其实这个排序而是按首写字母顺序排序的,我们需要按照他本身的含义进行排序(5,4,1,7,6,3,2)进行排序: 这时候我们就需要增加一类数值型的,并按照此排列: 令m 然后利用arrange函数利用group组进行分类: avo.order 然后利用ggplot包添加显著性标记(如下): 前面画的误差线图一样 p 然后利用geom_tex函数和label赋值进行标记: label ggsave("p.avo.tiff",p.avo,width=4,height=4.7)#输出高质量的图 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |