【问题标题】:How to write x-axis title with text and superscript ggplot2如何用文本和上标ggplot2编写x轴标题
【发布时间】:2013-11-02 18:47:07
【问题描述】:

我想使用以下代码在 x 轴上写下以下标题:

标题:粮食产量(ton.ha-1)

labs(x=expression(bold(paste("Grain yield","  ","(ton.", ha^-1,")", sep=""))))

-1 应该是上标并且整个标题应该是粗体。除了上标部分不是粗体之外,我一切正常。

感谢您的帮助。

谢谢!

【问题讨论】:

  • 你可能在这里不走运。有相同问题的其他人请参阅grokbase.com/t/r/r-help/095ybct0vt/… ...
  • 这个情节的创建是否必须包含在 R 中?您对这个情节是否有最终目的,可能会允许其他程序或方法?
  • 这个问题(数值不接受 bolditalic 函数)在 ?plotmath 页面的详细信息中提出,为什么他们也没有提到解决方案超出了我的理解。
  • @DWin:也许值得建议对 r-devel 进行文档修复?
  • 我提出了这个建议。时间会证明一切。

标签: r ggplot2


【解决方案1】:

从@BenBolker 得到不正确的建议是很不寻常的,但这里是他提供的解决方案,作为没有解决方案的问题示例:

barplot(height=c(1,1), ylab=expression(bold(paste("org.", cm^bold("-2")))))

这里的技巧不是使用数字,而是使用文本参数。在您的情况下,您普遍认为 plotmath 中的 paste 有一个“sep”参数。它没有。 (此外,如果您学会正确使用“~”和“*”,通常不需要它。)这是一个无粘贴()的解决方案:

plot(1,1, xlab=expression(bold(Grain~yield~~"(ton."*ha^"-1"*")")))

(我用一个基本图形对其进行了测试,因为您没有提供完整的示例。基本 R 中没有 lab 函数。)

【讨论】:

  • @SimonO101 我仍在使用 10.6.8,两种解决方案都可以在 RStudio 图形设备中使用 ggplot2 0.9.3.1。
  • @SimonO101:正如我向 OP 建议的那样,我认为发布测试用例是他们的(未满足的)责任。此外,如果您只是在我的代码前面添加一个“q”,它可以在我的 Mac 上使用 ggplot2 0.9.3.1 使用 R 3.0.2,因此您需要报告有关您的确切代码的更完整信息(我怀疑这不是我提供了。)
  • @DWin a) 是的,他们同意他们应该发布一个测试用例。 b)我使用了您的确切代码(包括基本图形) c)撤回评论并道歉。我的系统 Arial.ttf 文件有问题,导致该问题。与 R 或 ggplot2 无关。升级到 Mavericks 后,系统默认的 Arial 文件被禁用,自从放回去后,我似乎无法以粗体显示 anything
  • @BenBolker 是的,我似乎遇到了这里描述的问题:stackoverflow.com/a/11024005/1478381,但修复它破坏了我用粗体字绘制的能力。
  • @Dwin 谢谢你的回答我只需要对你展示的代码做一个小的修改:xlab=expression(bold(Grain~yield~~"(ton."ha^" -1"")"))) 这段代码在我的整个代码背景上都不起作用我把它改成 xlab(expression(bold(Grain~yield~~"(ton."ha^" -1"")"))) 更改了信号 = for ( 并且效果很好。非常感谢!!!
【解决方案2】:

@Dwin 谢谢你的回答我只需要对你展示的代码做一个小的修改:

xlab=expression(bold(Grain~yield~~"(ton."*ha^"-1"*")")))

这段代码在我的整个代码背景上都不起作用,我把它改成了

xlab(expression(bold(Grain~yield~~"(ton."*ha^"-1"*")")))

更改了信号 = for ( 并且效果很好。

非常感谢!!!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多