我尝试在箱线图顶部显示一条线,其中 x 由因子构成。
此代码运行良好:
x <- c(91,92,93,125,123,140)
y <- c(200,260,220,300,350,360)
d1 <- data.frame(x=x,y=y)
d1$f1 = factor(round(d1$x/10))
qplot(f1,y,data=d1,geom="boxplot")
d2<-data.frame(x2=c(90,140),y2=c(210,320))
qplot(x2,y2,data=d2,geom="line")
但是当我尝试将线添加到图形中时...
qplot(f1,y,data=d1,geom="boxplot") + geom_line(data = d2, aes(x = x2, y=y2))
查看我的结果:http://jeb-files.s3.amazonaws.com/Clipboard01.jpg
我如何设法让我的线条与我的箱线图对齐?
谢谢!
最佳答案
boxplot
要求 x 值是因子,而 geom_line
要求 x 值是数字。您可以通过修改 geom_line
调用来获得您想要的结果,以便将 x
值定义为从 ordered 获得的因子的数字版本 回合(x2/10)
:
qplot( f1,y,data=d1,geom="boxplot") +
geom_line(data = d2, aes(x = as.numeric(ordered(round(x2/10))), y=y2))
关于R:在同一个箱线图上画一条线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6181155/