manually manipulation ggtitle ggplot change r ggplot2

r - manipulation - ggtitle position



ggplot2 cada grupo consiste en una sola observación (2)

Necesitas ajustar la estética del grupo, reemplazar:

geom_line(position=pd)

por

geom_line(position=pd,aes(group=name))

Estoy tratando de trazar la gráfica usando ggplot2

Así que tengo el siguiente marco de datos:

iter se perf name 1 V1 0.6463573 12.8 e 2 V2 0.3265986 16.8 e 3 V3 0.2333333 19.1 e 4 V4 0.1000000 19.9 e 5 V5 0.0000000 20.0 e 6 V1 0.7483315 12.6 f 7 V2 0.6333333 16.3 f 8 V3 0.6798693 18.8 f 9 V4 0.2236068 19.5 f 10 V5 0.1000000 19.9 f

y estoy tratando de trazarlo en un formato similar al de esta page (debajo de Gráficos de líneas).

Así que aquí está el código para trazar:

pd <- position_dodge(.1) ggplot(df, aes(x=iter, y=perf, colour=name)) + geom_errorbar(aes(ymin=perf-se, ymax=perf+se), width=.1, position=pd) + geom_line(position=pd) + geom_point(position=pd)+ ylim(0, 20)

y está funcionando muy bien: , excepto que quiero que estos puntos estén conectados. Intenté agregar group=1 o group=name a esta parte aes(x=iter, y=perf, colour=name) pero no ayudó.

También recibo estas advertencias:

ymax not defined: adjusting position using y instead ymax not defined: adjusting position using y instead geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?

Después de buscar en Internet, descubrí que los dos primeros se deben a position_dodge, pero creo que se debe al ggplot, el tercero en realidad se debe a mis puntos desconectados.

¿Alguna idea de cómo conectarlos?


compruebe si el tipo de datos es factor utilizando is.factor(x) , si es TRUE , luego use la función as.integer .