R / ggplot2:在parse()上使用文字字符串

时间:2015-07-12 21:57:33

标签: r parsing ggplot2 expression

我传递给parse(text=...)的部分字符串是否可以作为文字字符串?文字字符串意味着它不会尝试解释它。

例如,我想要文本" p -value"图中的文字(用斜体表示)。

我在做:

library(ggplot2)
ggplot(data.frame(x=rnorm(500)), aes(x)) + geom_histogram() + geom_text(label='italic(p)-value==0.10', parse=TRUE, x=-2, y=40)

结果:

pvalue

连字符有太多的填充和太大(因为它将它作为减法符号),并且它没有显示我使用的完全精度的数字。

我可以告诉他按原样参加那个字符串吗?

1 个答案:

答案 0 :(得分:2)

这个怎么样:

ggplot(data.frame(x=rnorm(500)), aes(x)) + 
    geom_histogram() + 
    annotate("text", label='italic(p)*"-value"=="0.15"', parse=TRUE, x=-2, y=40)

这里我们使用双引号来指定字符值,并使用*将它们放在表达式旁边。

另请注意对annotate()而非geom_text()的更改。后者会在同一位置打印出500个标签,因为它与您在ggplot电话中指定的数据相关联。

使用set.seed(15),我得到了

enter image description here