【发布时间】:2012-05-23 19:50:11
【问题描述】:
我正在努力尝试将希腊符号绘制为轴标签。由于要循环几个不同比例的图,我想使用一个包含符号名称的向量,而不是在expression() 中使用符号名称,这样可以正常工作:
x <- rnorm(10, 5,6)
y <- rnorm(10, 2,1)
xlab <- expression(paste(mu, "mol/mol"))
plot(x,y, xlab = xlab)
由于某种原因,我无法将“mu”替换为包含符号名称的向量:
k <- "mu"
xlab <- expression(paste(get(k), "mol/mol"))
plot(x,y, xlab = xlab)
我找到了一个类似的question,但对函数有效的方法似乎不适用于希腊符号:
ylab <- substitute(paste(nn, "mol/mol"), list(nn=k))
xlab <- bquote(.(k) * "mol/mol")
plot(x,y, ylab = ylab, xlab = xlab)
我做错了什么?如何通过向量获取希腊符号到轴标签?
【问题讨论】:
-
表达式是一个原始函数。它不评估它的论点。
-
this Q&A 有帮助吗?
-
@fotNelton:这至少行不通:ylab
-
请注意,问题的真正原因在于
k = "mu"是您希望将其解释为表达式的字符串。如果你有k = quote(mu),那么xlab = bquote(.(k)*mol/mol)就可以了。 -
@Largh:可能有一点误解。我的意思是指出您使用
parse。