EDIT Updated to ggplot2 0.9.3
Here’s another solution. It uses facet_grid
and space = "free"
; also it uses geom_point()
and geom_errorbarh()
, and thus there is no need for coord.flip()
. Also, the x-axis tick mark labels appear on the lower panel only. In the code below, the theme
command is not essential – it is used to rotate the strip text to appear horizontally. Using the test
dataframe from above, the following code should produce what you want:
library(ggplot2)
p <- ggplot(test, aes(y = characteristic, x = es, xmin = ci_low, xmax = ci_upp)) +
geom_point() +
geom_errorbarh(height = 0) +
facet_grid(set ~ ., scales = "free", space = "free") +
theme_bw() +
theme(strip.text.y = element_text(angle = 0))
p
The solution is based on the example on page 124 in Wickham’s ggplot2 book.