R:如何在字符串中混合一系列变量和希腊符号

时间:2012-02-15 15:41:23

标签: r plotmath

假设x和y是变量。我正在尝试创建一个Latex等效于$\sigma_v =$ 3 $\rho =$ 5的图表标题,其中值3和5来自R变量。

这是我能来的最近的(以?plotmath中的一个例子为模型):

x <- 1:10
y <- 3
z <- 5
plot(x,x)
mtext(substitute(list(sigma[v],rho) == group("(",list(a,b),")"),list(a=y,b=z)))

是否可以有一系列“variable = number”字符串?

2 个答案:

答案 0 :(得分:3)

您可以使用bquote()执行您想要的操作(相当于LaTeX)。这是一个例子:

x <- 1:10
y <- 3
z <- 5
plot(x,x)
title(main = bquote(sigma[v] == .(y) ~~ rho == .(z)))

答案 1 :(得分:2)

LaTex表达式没有逗号分隔两对,但看起来你确实想要一个,所以看看这是一个很好的解决方案:

mtext(substitute(sigma[v] == a *","~ rho == b, list(a=y,b=z)))

评论mcd引发的“连接表达式”的概念:有效(不可见)“连接符”是~*以及(可见)中缀运算符。空格是不是有效的分隔符(并且它们被忽略)。您不需要引用除逗号之外的任何内容,不用于未解释的子表达式的可见分组的括号,以及未用于其副作用的插入符号和括号。有时引用一长串文本比较方便,因为空格比多个*或波形符更容易键入以分隔非plotmath-ish词。