我正在尝试制作一个带有特殊字符和上标的y轴标题。我能够做到这一点,但我希望不要在右括号上加上上标。这就是我遇到的问题。我认为这只是放置括号的地方,但是我已经尝试(似乎)进行了所有操作。
plot(WatexCl, ConcuM, col = as.numeric(1), pch = as.numeric(Depth),
xlab = expression(paste("Concentration Cl ( ", mu, "moles/g dry wt)")),
ylab = expression(paste("Average Conc of S- on plates ( ", mu, "Moles/cm"^"2"),)),
data = plates)
最佳答案
用户经常无法理解的一件事是,当在用于绘图标签的表达式中使用时,您总是不需要一起引用字符串并对其进行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)
生产
关于r - 绘图轴标题上的特殊字符和上标,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15736370/