次のリンクからヒントを得て、 2 つのプロットを ggplot2 で整列すると、共通の x 軸に対してファセットされた 2 つの「y」変数をプロットできました。私が今やりたいことは、 geom_point レイヤーをファセットの 1 つだけに追加できるようにすることです。このレイヤーは、d1 と同じ構造を持つ別のデータセット (d3) を使用します。レイヤーを追加すると、両方のファセットで使用されます。上部ファセットのみポイントを重ねることは可能ですか?
library(ggplot2)
x <- seq(1992, 2002, by = 2)
d1 <- data.frame(x = x, y = rnorm(length(x)))
xy <- expand.grid(x = x, y = x)
d2 <- data.frame(x = xy$x, y = xy$y, z = jitter(xy$x + xy$y))
d3 <- data.frame(x = x, y = 3+rnorm(length(x)))
d1$panel <- "a"
d2$panel <- "b"
d1$z <- d1$x
d <- rbind(d1, d2)
p <- ggplot(data = d, mapping = aes(x = x, y = y))
p <- p + facet_grid(panel ~ ., scale = "free")
p <- p + layer(data = d1, geom = c( "line"), stat = "identity")
###*p <- p + layer(data = d3, geom = c( "point"))* - This is the layer I intend to add only to the top panel
p <- p + layer(data = d2, geom = "line", stat = "identity")
p