在ggplot2的注释中停止解析小数后的零

时间:2017-03-29 20:56:19

标签: r ggplot2

我需要在ggplot2图上注释一个位置,其中包含一个(真实的)希腊字母和一个四舍五入到小数点后两位的数字。我的问题出现了,因为我想显示小数位,即使它们都是零。不幸的是,parse = T中的annotate设置会将字符串"1.00"转换为"1"。这是一个具体的例子:

alpha_num <- "1.00"
p <- ggplot(data.frame(x=1,y=1,label=paste0("alpha == ", alpha_num)))
p <- p + geom_text(aes(x,y,label=label), parse = TRUE, size = 30)

上面的代码生成以下图:updated version of your fiddle

如何完整显示alpha_num

1 个答案:

答案 0 :(得分:4)

您可以使用deparse

来完成

所以你的代码看起来像这样

alpha_num <- "1.00"
p <- ggplot(data.frame(x=1,y=1,label=paste0("alpha == ", alpha_num)))
# Use deparse in label
p <- p + geom_text(aes(x,y,label=paste0("alpha == ", deparse(alpha_num))), parse = TRUE, size = 30)
p  

输出是:

enter image description here