ggplot2 中缺少自定义注释 Grob

Missing Custom Annotation Grob in ggplot2

我试图根据网站 http://zevross.com/blog/2014/08/04/beautiful-plotting-in-r-a-ggplot2-cheatsheet-3 向我的绘图添加自定义文本注释 grob。我正在使用这种技术,以便我可以将文本添加到标准化坐标中。当我添加 grob 时,文本不会出现在绘图中。我以前用过这个程序,效果非常好。对于我的一生,我无法弄清楚为什么这个不起作用。

此处的最小示例:

len = 100
pd = data.frame(x = runif(50)*len - len/2, y = runif(50)*len - len/2)

my_grob = grobTree(textGrob('Some Text', x=0.5,  y=0.5, hjust=0.5, gp=gpar(col='black', fontsize=12, fontface="italic")))

rp = ggplot() + theme_bw() +
  theme(axis.text = element_blank(), axis.ticks = element_blank(), axis.title = element_blank()) +
  theme(panel.grid = element_blank(), panel.border = element_blank()) +
  geom_point(data = pd, aes(x = x, y = y)) +
  coord_equal(xlim = c(-len/2, len/2)*1.1, ylim = c(-len/2, len/2)*1.1) +
  annotation_custom(my_grob)
rp

任何人都可以帮我看看我在这里缺少什么吗?我以为可能是主题改变了,但是当我把它们去掉时,问题仍然存在。 (是的,在说过我可以将它们从上面删除以使其更小之后......但我将保留它以获得完整效果)。感谢您的任何见解。

正如 RStudent 在上面的评论中所述,我需要做的就是选择一个数据集以提供给 ggplot() 构造函数。尽管这行得通,但我希望我不必那样做。