4

我想在几个 ggplot 对象的中心放置一个注释。

我研究并发现了一些类似的问题,例如:Geom_text 在 ggplot2 中的相对定位?

到目前为止,我找到的唯一答案是操纵绝对范围(例如“,y = ymax/2”)。

我想在打印到 .pdf 之前循环添加注释层。我可以使用 +/- Inf 将注释放在角落,如下所示:

plot.list<-list()
g<- qplot(1,1)

plot.list[[length(plot.list)+1]]<-g
plot.list[[length(plot.list)+1]]<-g

pdf("MyReport.pdf"
    ,width = 14
    ,height=8.5
    ,paper="a4r")
for(i in 1:length(plot.list)){
  print(plot.list[[i]]+
          annotate("text",x=Inf,y=Inf,hjust=1,vjust=1
                   ,label="PLEASE DO NOT DISTRIBUTE"
                   ,fontface="bold",color="darkred",alpha=0.3))
}
dev.off()

如何将注释放在中心而不是角落?

4

1 回答 1

8
library(grid) # for textGrob

qplot(1,1) +
    annotation_custom(grid::textGrob("there"), 
                      xmin = -Inf, xmax = Inf, ymin = -Inf, ymax = Inf) 

在此处输入图像描述

于 2014-08-25T16:11:57.007 回答