0

我正在尝试使用 ggplot2 将置信区间添加到附加图中显示的点。(2 个数据集,1 个 X 轴,2 个 Y 轴)

这些点代表平均值(数据框中的 val 列)。数据框还包含上限值和下限值(L 和 U 列)

t<-data.frame(rep(c( "AA","AG","GG"),2), c(79.29365,47.67004,22.86688,28.41990,33.29651,36.76852),
           c(71.18651,45.97425,22.04625,27.23392,32.97892,36.57194),
           c(87.40079,49.36582,23.68751,29.60588,33.61411,36.96510),
           c(rep("a",3),c(rep("b",3))))
colnames(t)<-c("x","val","L","U","panel")

d1<-t[1:3,]
d2<-t[4:6,]

p <- ggplot(data = t, mapping = aes(x =t$x, y = t$val))
p <- p + facet_grid(panel ~ ., scale = "free")
p <- p + layer(data = d1, mapping=aes(x = d1$x, y = d1$val), geom = c( "point"), stat = "identity",size=3) 
p <- p + layer(data = d2, mapping =aes(x = d2$x, y = d2$val),geom = "point", stat = "identity",size=3)
p<-p+theme_bw()
p<-p+xlab("Genotypes")+ylab("Quantitative trait")+ggtitle("RS")
p<-p+scale_color_hue()
p

在此处输入图像描述

我已经设法在一个简单的 ggplot 图中为一个数据集绘制了误差线,但是我没有像上面尝试的那样将它们正确地添加到两个图中。

ggplot(d1, aes(x = d1$x, y = d1$val)) +  geom_point(colour="gray", size = 4)+geom_errorbar(aes(ymax = d1$U, ymin = d1$L),width=0.05) +theme_bw()

提前致谢。

4

1 回答 1

1

只需将以下命令添加到现有绘图中,一切都会正常工作:

geom_errorbar(aes(ymax = U, ymin = L), width = 0.05) 

笔记。我指的是UandL而不是d1$Uand d1$L。两层的误差线限制已经存在于t.

在此处输入图像描述

于 2013-05-29T09:54:12.723 回答