多数のヒストグラムを作成しており、グラフの上部に注釈を追加したいと考えています。for ループを使用してこれらをプロットしているため、ylim がグラフごとに変化しても、注釈を上部に配置する方法が必要です。ループ内の各グラフの ylim を保存できれば、現在のグラフに基づいて注釈の y 座標を変化させることができます。注釈に含める y の値は、ループが繰り返し処理されるにつれて動的に変化する必要があります。私の問題を示すサンプルコードを次に示します (注釈がどのように移動するかに注意してください。各グラフの ylim に基づいて変更する必要があります)。
library(ggplot2)
cuts <- levels(as.factor(diamonds$cut))
pdf(file = "Annotation Example.pdf", width = 11, height = 8,
family = "Helvetica", bg = "white")
for (i in 1:length(cuts)) {
by.cut<-subset(diamonds, diamonds$cut == cuts[[i]])
print(ggplot(by.cut, aes(price)) +
geom_histogram(fill = "steelblue", alpha = .55) +
annotate ("text", label = "My annotation goes at the top", x = 10000 ,hjust = 0, y = 220, color = "darkred"))
}
dev.off()