【问题标题】:ggplot2 label: Combination of Greek symbol and exponential term,ggplot2 label:希腊符号和指数项的组合,
【发布时间】:2016-04-22 14:06:10
【问题描述】:

我需要标记我的 y 轴,以便它首先显示单词“Power”,然后是方括号中的表达式:[micro Volt squared]。

我可以制作我想要的整体标签的单个部分,但是当我想组合它们时遇到问题:

x <- 1:10; y <- 10:1; z <- data.frame(x,y)
g <- ggplot(z, aes(x,y) + geom_bar(stat='identity')

g + ylab('Power') # No problem
g + ylab(paste('Power [', ']')) #No problem
g + ylab(expression(mu)) # No problem
g + ylab(expression(V^2)) # No problem

但是,这似乎是不可能的:

g + ylab(paste('Power [', expression(mu), expression(V^2), ']'))

输出不计算表达式(mu 和 V^2):

我哪里出错了? paste() 命令通常是错误的方法吗?我还查看了 unicode 字符 (Unicode Characters in ggplot2 PDF Output) ... 但这仍然会让我想知道如何充分组合所有单个术语。

非常感谢您的帮助!

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    您需要将所有内容都放在表达式中。 您可以使用星号进行分隔,波浪号用于空格。所以这应该是对的。

    g + ylab(expression("Power"~"["*mu*V^2*"]"))
    

    【讨论】:

      【解决方案2】:

      单个expression 似乎可以解决问题:

      g + ylab(expression(paste("Power [",mu, V^2,"]")))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-14
        • 2013-12-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-06-21
        • 2019-12-24
        • 1970-01-01
        相关资源
        最近更新 更多