R - ggplot esquivando geom_lines

Esto ha sido algo con lo que he estado experimentando para encontrar una solución durante un tiempo, pero básicamente me preguntaba si hay una forma rápida de "esquivar" los gráficos de líneas para dos conjuntos de datos diferentes en ggplot2.

Mi código es actualmente:

#Example data
id <- c("A","A")
var <- c(1,10)
id_num <- c(1,1)
df1 <- data.frame(id,var,id_num)

id <- c("A","A")
var <- c(1,15)
id_num <- c(0.9,0.9)
df2 <- data.frame(id,var,id_num)


#Attempted plot
dodge <- position_dodge(width=0.5)
p<- ggplot(data= df1, aes(x=var, y=id))  +
  geom_line(aes(colour="Group 1"),position="dodge") + 
  geom_line(data= df2,aes(x=var, y=id,colour="Group 2"),position="dodge") +
  scale_color_manual("",values=c("salmon","skyblue2"))
p

Que produce:

Aquí la línea "Grupo 2" está ocultando toda la línea "Grupo 1" que no es lo que quiero. En cambio, quiero que la línea "Grupo 2" esté debajo de la línea "Grupo 1". Miré a mi alrededor y encontré esta publicación anterior:ggplot2 offset puntos de diagrama de dispersión pero parece que no puedo adaptar el código para que dos geom_lines se esquiven entre sí al usar marcos de datos separados.

He estado convirtiendo mis variables y a numéricas y las compensé ligeramente para obtener el resultado deseado, pero me preguntaba si había una forma más rápida / fácil de obtener el mismo resultado utilizando la funcionalidad de esquivar de ggplot u otra cosa.

Mi trabajo en torno al código es simplemente:

p<- ggplot(data= df1, aes(x=var, y=id_num))  +
  geom_line(aes(colour="Group 1")) + 
  geom_line(data= df2,aes(x=var, y=id_num,colour="Group 2")) +
  scale_color_manual("",values=c("salmon","skyblue2")) + 
  scale_y_continuous(lim=c(0,1))
p

Dándome mi salida deseada de:

Salida deseada:

El enfoque numérico puede ser un poco engorroso cuando intento expandirlo para que se ajuste a mis datos reales. Tengo que convertir mis valores de y en factores, cambiarlos a numéricos y luego fusionar los valores en el segundo conjunto de datos, por lo que sería preferible una forma más rápida. ¡Gracias de antemano por tu ayuda!

Respuestas a la pregunta(1)

Su respuesta a la pregunta