我正在尝试使用回归模型中的相关数据来注释 ggplot 中的图。
我已遵循建议在这个帖子中 https://stackoverflow.com/questions/7549694/ggplot2-adding-regression-line-equation-and-r2-on-graph并尝试修改该函数以在 a 中添加几个附加项目newline在情节中。
这是我对新功能的尝试:
lm_eqn = function(m){
eq <- substitute(italic(y) == a %.% italic(x)^b*","~~italic(r)^2~"="~r2*","~~italic(n)~"="~nn*","~~italic(p-value)~"="~pv,
list(a = format(exp(coef(m)[1]), digits = 3),
b = format(coef(m)[2], digits = 3),
r2 = format(summary(m)$r.squared, digits = 3),
nn=format(summary(m)$df[2]),
pv=format(summary(m)$coefficients[,4][2])))
as.character(as.expression(eq));
}
它产生预期的输出:全部在一行中。但我想将文本分成两行,第二行以italic(n)=
。但如果我介绍一个\n
,当它找到时会抛出错误\n
。如果我在引号内引入 \n:"\n"
然后它似乎被忽略并且文本保留在一行中。我还没有找到任何关于如何在这样的表达式中引入换行符的参考。我们将非常感谢您的帮助。
Thanks.
编辑:根据@Tim 的评论,我提出了一个书面代码和调整后的问题。
\n
不能用于plotmath
表达式。您也许可以将表达式分成两部分,然后使用annotate
将表达式添加到您想要的位置。或者,使用atop
。看看这篇文章->表达式()中的换行符? https://stackoverflow.com/questions/18237134/line-break-in-expression
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)