r - 绘图轴标题上的特殊字符和上标

标签 r plot superscript plotmath

我正在尝试制作一个带有特殊字符和上标的 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)

最佳答案

用户经常无法理解的一件事是,在绘图标签的表达式中使用时,您总是不需要引用字符串并将它们粘贴在一起。直接使用布局工具通常更简单(例如 ~*)。例如:

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")))

但请注意,无需在此处粘贴字符串和其他功能。

两者都产生:

enter image description here

请注意绘图中上标 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)

制作

enter image description here

关于r - 绘图轴标题上的特殊字符和上标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15736370/

相关文章:

mysql - 使用 RMySQL 将列添加到现有的 mysql 表中

R:无法保存对象的元素

c++ - Qt - 如何在 QLineEdit 中添加上标和下标?

php - 忽略标题标签中的上标

r - 计算一个基于类型和距离的惩罚指标

r - 绘制随机布局并填充文本

python - 如何在 matplotlib 图的底部显示残差

python - 以对数刻度间距绘制 x 轴但不以指数形式标记它

python - matplotlib 图例中的上标格式

r - 为向量中的行赋值