paste
用户经常无法理解的一件事是,在用于绘图标签的表达式中时,您总是不需要引用字符串并将它们一起引用。直接使用布局工具通常更简单(例如~
和*
)。例如:
df <- data.frame(y = rnorm(100), x = rnorm(100))
plot(y ~ x, data = df,
ylab = expression(Average ~ Conc ~ of ~ S- ~ on ~ plates ~
(mu ~ Moles ~ cm^{-2} ~ dry ~ wt)),
xlab = expression(Concentration ~ Cl ~ (mu ~ moles ~ g^{-1} ~ dry ~ wt)))
或者,您可以为较长的文本部分包含字符串;在这种情况下,可以说更容易做到:
plot(y ~ x, data = df,
ylab = expression("Average Conc of S- on plates" ~
(mu ~ moles ~ cm^{-2} ~ "dry wt")),
xlab = expression("Concentration Cl" ~ (mu ~ moles ~ g^{-1} ~ "dry wt")))
但请注意这里不需要paste
字符串和其他功能。
两者都产生:

请注意 plotmath 与上标 2 的问题。您可能希望为 y 轴边距添加一些额外空间以适应它:
op <- par(mar = c(5,4.5,4,2) + 0.1)
plot(y ~ x, data = df,
ylab = expression("Average Conc of S- on plates" ~
(mu ~ moles ~ cm^{-2} ~ "dry wt")),
xlab = expression("Concentration Cl" ~ (mu ~ moles ~ g^{-1} ~ "dry wt")))
par(op)
生产
