library(ggplot2) #dataframe ID <- 1:12 series2 <- runif(12, min=4, max=15) series1 <- runif(12, min=25, max=50) df <- data.frame(ID, series1, series2) #graph1 ggplot(df) + geom_col(aes(ID, series1), size = 1, color = "darkblue", fill = "white") + scale_x_continuous(breaks=seq(1, 12, 1)) #graph2 ggplot(df) + geom_line(aes(ID, series2), size = 1.5, color="red") + scale_x_continuous(breaks=seq(1, 12, 1)) #add graph2 to graph1 ggplot(df) + geom_col(aes(ID, series1), size = 1, color = "darkblue", fill = "white") + geom_line(aes(ID, series2), size = 1.5, color="red")+ scale_x_continuous(breaks=seq(1, 12, 1)) #multiply by 2 ggplot(df) + geom_col(aes(ID, series1), size = 1, color = "darkblue", fill = "white") + geom_line(aes(ID, 2*series2), size = 1.5, color="red") + scale_x_continuous(breaks=seq(1, 12, 1)) #set the axis divided by 2 ggplot(df) + geom_col(aes(ID, series1), size = 1, color = "darkblue", fill = "white") + geom_line(aes(ID, 2*series2), size = 1.5, color="red") + scale_x_continuous(breaks=seq(1, 12, 1)) + scale_y_continuous(sec.axis = sec_axis(~./2)) #add secondary y-axis title ggplot(df) + geom_col(aes(ID, series1), size = 1, color = "darkblue", fill = "white") + geom_line(aes(ID, 2*series2), size = 1.5, color="red") + scale_x_continuous(breaks=seq(1, 12, 1)) + scale_y_continuous(sec.axis = sec_axis(~./2, name = "series2"))