【发布时间】:2012-11-28 03:55:30
【问题描述】:
我想创建一个条形图,其中条形图绘制在水平线的顶部。
下面的代码完成了这个:
y <- c(1,2,3,5)
barplot(y)
abline(h=mean(y))
barplot(y, add=T)
但是,我担心barplot() 中的add=T 参数如果重复使用会引入打印伪影。我很好奇上述代码是否有替代方案(尽管上述代码可能是最快的方法)。
【问题讨论】:
我想创建一个条形图,其中条形图绘制在水平线的顶部。
下面的代码完成了这个:
y <- c(1,2,3,5)
barplot(y)
abline(h=mean(y))
barplot(y, add=T)
但是,我担心barplot() 中的add=T 参数如果重复使用会引入打印伪影。我很好奇上述代码是否有替代方案(尽管上述代码可能是最快的方法)。
【问题讨论】:
如果您使用 ggplot2,则不必担心这一点。您的问题归结为几何顺序:
ggplot(data.frame(x=1:4, y=y), aes(x=x, y=y)) +
geom_bar(stat="identity") +
geom_hline(yintercept=mean(y), color="red")
比较:
ggplot(data.frame(x=1:4, y=y), aes(x=x, y=y)) +
geom_hline(yintercept=mean(y), color="red") +
geom_bar(stat="identity")
【讨论】:
ggplot2。