我想让均值显示在X轴上,但我只能让它显示在X轴的上方:
curve(dnorm(x, mean=mu, sd=s), from=0, to=80, xlab="Horas", ylab="f(x)")
abline(v=mu, col='red', lty=3)
abline(v=mu - s/2, col='blue', lty=3)
abline(v=mu + s/2, col='blue', lty=3)
legend("topright", legend=c("", ""),
title=(paste("N(", mu, ", ", s, ")")),
title.adj=0, lty=0, lwd=0, box.lty=0)
text(mu, 0, labels=mu)
box()
2条答案
按热度按时间tyu7yeag1#
使用
mtext()
代替text()
(代表 margin text):您可以使用
line =
参数调整文本的y位置。阅读help(mtext)
。如果你不想在边界处添加均值,而是想在x轴上添加均值,你必须首先通过添加
xaxt='n'
参数来禁止在curve()
中绘制原始x轴,然后用axis(1)
手动绘制轴。示例:
hiz5n14c2#
我们可以让它更动态,例如从
0
到大约2
乘以mu的曲线。如果我们在x轴上有通常的四舍五入间距,突出显示平均值,它可能看起来更好,显然max(pretty(mu*2/3))
工作得不太糟糕。最后,abline
s可以一步绘制,bquote
有助于用方程进行动态表达。