R中的图标签中的乳胶和变量?

时间:2011-07-28 09:00:49

标签: r latex plot

如何在R?

中的Latex表达式中使用变量

例如:

plot(X, Y, main=expression(R^2))

将R放在一个漂亮的上标2作为主标题。

但是我要说它想要'R ^ 2:0.5',其中0.5来自R变量。我该怎么做?

4 个答案:

答案 0 :(得分:13)

Owen的黑客很酷,但实际上并不常见。如果您使用bquote,这实际上非常简单。 bquote将与quote执行相同操作,但.()之间的所有内容都将在指定环境(或全局,如果未指定任何内容)中进行评估。

一个简单的例子:

X <- 1:10
Y <- 1:10
a <- 0.8
plot(X,Y,main=bquote(R^2 : .(a)))

给予:

enter image description here

有关更多示例和可能性,请参阅?bquote?plotmath

答案 1 :(得分:3)

这很有效......

call(':', quote(R^2), a)

虽然对我来说感觉有点哈哈,因为它使用的是R:运算符,而你只是想在最后添加一些文本。也许有更好的方法?

答案 2 :(得分:3)

tikz和psfrag允许您使用实际的LaTeX代码和输出而不是plotmath,从而获得更好的排版一致性。

有关详细信息,请参阅此问题。 Getting LaTeX into R Plots

答案 3 :(得分:2)

@Joris主题的另一个变体是substitute()。您为substitute()提供表达式以及用于评估表达式的环境或列表。通过列表通常是最简单的,特别是对于像这里提出的那样的工作。

plot(X,Y, main = substitute(R^2 : a, list(a = a)))

我们可以通过仅查看substitute()电话:

来了解其原因
> substitute(R^2 : a, list(a = a))
R^2:0.8

表达式中的a将替换为列表中a的值。