3

我尝试了几乎所有 paste()、bquote()、as.expression()、c()、...的组合

plot(d[,"y"], type="l",xlim=c(1,n), ylim=c(min(d[,"y"]),max(d[,"y"])), 
  ylab="Y", xlab="T", main="ARMA(1,1)",
   sub=c(as.expression(bquote(phi == .(coef_ar)), 
         as.expression(bquote(theta == .(coef_ma))))))

这只是绘制“phi = 0.5”(在这种情况下是希腊符号),而不是第二部分(theta)。谁能帮帮我!

谢谢!

4

1 回答 1

7

您可以使用substitute. ~将用空格连接表达式

plot(1, main = substitute(phi == Phi ~ theta == Theta, list(Phi = 1, Theta = 1)))

在此处输入图像描述

或者您可以bquote以类似的方式使用

plot(1, main = bquote(phi == .(coef_ar)  ~ theta == .(coef_ma)))

您的初始方法不起作用的原因是它创建了一个表达式向量,然后仅使用第一个元素作为字幕。

如果您想要comma分隔值,请使用list(),

例如

 plot(1, main = bquote(list(phi == .(coef_ar), theta == .(coef_ma))))
于 2012-11-27T23:53:49.110 回答