使用ggplot2或ggpubr的轴标签内的上标

ct2axkht  于 2023-02-26  发布在  其他
关注(0)|答案(2)|浏览(196)

我一直在尝试提高m^2中的2,并让mu看起来像特殊字符,但似乎无法弄清楚。我已经尝试了这个和许多其他包括unicode,添加引号隔离什么是不应该提高。任何帮助将是伟大的。谢谢!
下面是我的代码:

ggboxplot(Photo_Mass_2021, x = "Species", y = "Pn_N", title= "Net Photosynthesis by Species", ylab= expression(paste("Net Photosynthesis ((mumol/m^2*/s)/ mass (g))")), color = "Species", add = "jitter", legend = "none") +
  geom_hline(yintercept = mean(Photo_Mass_2021$Pn_N), linetype = 2)+
  stat_compare_means(method = "anova", label.y = 170)+ stat_compare_means(label = "p.signif", method = "t.test",ref.group = ".all.")
rekjcdws

rekjcdws1#

当使用expression()作为标签时,请检查help(plotmath)example(plotmath)的语法。习惯这种语法需要时间。但是有两点需要记住:*可以用来连接内容而无需插入空格,~可以添加空格(或者更确切地说是一个狭窄的空格)。您可以用引号保护文本的部分内容,这样它就不会被解释为表达式。下标用[ ]表示,上标用^表示。我按照数量和单位不能混淆的规则更改了你的标签。(有些人不同意这一点。)我的答案使用了回答您的问题所需的最少代码。(这也是建议的提问方式。)

library(ggplot2)
ggplot() +
labs(y = expression("Net Photosynthesis per mass "*(mu*mol~m^{-2}~s^{-1}~g^{-1})))

reprex package(v2.0.1)于2021年9月18日创建

gblwokeq

gblwokeq2#

我遇到了这个问题,唯一的办法是将ggplot2ggpubr结合起来,如下所示:从ggpubr代码中删除ylab并添加ggplot labs,然后编写表达式,考虑希腊字母前的 * 和希腊字母后的~

ggboxplot(Photo_Mass_2021, x = "Species", y = "Pn_N", title= "Net Photosynthesis by Species", 
color = "Species", add = "jitter", legend = "none") +   
      geom_hline(yintercept = mean(Photo_Mass_2021$Pn_N), linetype = 2) + 
         stat_compare_means(method = "anova", label.y = 170) + 
stat_compare_means(label = "p.signif", method = "t.test",ref.group = ".all.")+
labs(y=expression("Net Photosynthesis ((mumol/m^2*/s)/ mass (g))"))

相关问题