将居中标签添加到bargraph.CI

时间:2015-09-12 21:42:45

标签: r text graphics labels

我一直在研究这个问题一段时间但现在无济于事,现在我向大家寻求一些帮助/建议。总体目标是从Tukey HSD函数中获取成对比较输出组,并将它们直接添加到分组条形图中。我有很多这些比较的迭代,所以理想的目标是在运行脚本时自动设置这个中心 - 如果可能的话,不需要基于坐标的手动定位。截至目前,我有一个工作的bargraph.CI脚本,一个有效的ANOVA和一个工作后的hov脚本 - 现在我只需要它们一起玩得很好。我面临的问题是Tukey HSD组标签没有与图形的条形对齐(即输出顺序与图形顺序不对应)并且它们不居中。查看我的示例脚本后生成的输出/图表。感谢您的帮助!!

一些示例数据: https://www.dropbox.com/s/ulpgrmv731yc2aw/CFLold.csv?dl=0

我确实有“声望”来发布一个示例图像我到目前为止所以这里有一个:

https://www.dropbox.com/s/5v7kgunapufk48t/Untitled.tiff?dl=0

这就是我到目前为止:

library(sciplot)
library(agricolae)
mod.li <- aov(BA_Li ~ Year, CFL.old)
HSD.li <- HSD.test(mod.li,"Year", alpha = 0.05, group=TRUE, console=TRUE, main="Live Basal Area")

bg.li <- with(CFL.old, bargraph.CI(x.factor=Year, response=BA_Li,ylim= c(0,800),
              lc=FALSE, err.width = .03, xlab="Year of SB Outbreak", ylab = "Li (m2/ha)",
              x.leg=3.3, cex.leg=1, cex.names=1, cex.lab = 1,family = "Times",
              ci.fun=function(x) {c(mean(x) - 1.96*se(x), mean(x) + 1.96*se(x))}))
text(x=CFL.old$Year, labels=as.character(HSD.li$groups$M),cex=1,pos=3, xpd=T, family="Times")

2 个答案:

答案 0 :(得分:1)

不是您提出的问题,但这是使用"warning"的解决方案。

ggplot

答案 1 :(得分:1)

你几乎是正确的。

你应该写

text(x = bg.li$xvals, labels = as.character(HSD.li$groups$M), cex = 1, pos = 3, xpd = T, family = "Times")

查看bg.li

的返回值