The development version of ggplot2 (2.1.0.9001) provides a nice shorthand for creating a secondary axis that is a duplication of the primary axis if the original axis is continuous:
devtools::install_github("hadley/ggplot2")
library(ggplot2)
ggplot(mpg, aes(displ, cyl)) +
geom_point() +
scale_y_continuous(
sec.axis = dup_axis()
)
How can a discrete axis be duplicated?
ggplot(mpg, aes(displ, factor(cyl))) +
geom_point() +
...?