使用注释将不同的注释添加到不同的方面

jeb*_*nes 19 r ggplot2

我正在尝试将面板标签添加到绘图中的不同方面.我希望它们是1:7,但是,以下代码

d <- ggplot(diamonds, aes(carat, price, fill = ..density..)) +
     xlim(0, 2) + stat_binhex(na.rm = TRUE) + opts(aspect.ratio = 1)

d1<-d + facet_wrap(~ color)

d1+annotate("text", x=0.25, y=1.5e+04, label=1:7)
Run Code Online (Sandbox Code Playgroud)

产量

Error: When _setting_ aesthetics, they may only take one value. Problems: label
Run Code Online (Sandbox Code Playgroud)

现在,我可以提供单个值,并在所有方面进行复制.但是如何使用annotate()在不同的方面使用不同的标签?

Bri*_*ggs 24

annotate,你不能.但是通过设置data.frame并使用它作为a的数据源geom_text,它很容易(有一些簿记方面).

d1 + geom_text(data=data.frame(x=0.25, y=1.5e+04, label=1:7, 
                               color=c("D","E","F","G","H","I","J")), 
               aes(x,y,label=label), inherit.aes=FALSE)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述