R/ggplot2: 在 parse() 上使用文字字符串
R/ggplot2: use literal strings on parse()
我传递给parse(text=...)
的字符串的一部分可以作为文字字符串吗?文字字符串意味着它不会尝试解释它。
例如,我想在绘图中显示文本“p-value”(p 为斜体)。
我在做:
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)
结果:
连字符的填充有点太多而且太大(因为它把它当作减法符号),它没有以我使用的完全精度显示数字。
我可以告诉他按原样拿走那个字符串的一部分吗?
这个怎么样:
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)
,我得到
我传递给parse(text=...)
的字符串的一部分可以作为文字字符串吗?文字字符串意味着它不会尝试解释它。
例如,我想在绘图中显示文本“p-value”(p 为斜体)。
我在做:
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)
结果:
连字符的填充有点太多而且太大(因为它把它当作减法符号),它没有以我使用的完全精度显示数字。
我可以告诉他按原样拿走那个字符串的一部分吗?
这个怎么样:
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)
,我得到