Tengo un diagrama que estoy haciendo en ggplot2 para resumir los datos que provienen de un conjunto de datos celulados de 2 x 4 x 3. He podido hacer paneles para la variable de 2 niveles usando facet_grid(. ~ Age)
y para configurar los ejes x e y usando aes(x=4leveledVariable, y=DV)
. Solía aes(group=3leveledvariable, lty=3leveledvariable)
producir la trama hasta ahora. Esto me da una visualización que está panelada por la variable de 2 niveles, con el eje X representando la variable de 4 niveles y diferentes líneas trazadas dentro de los paneles para la variable de 3 niveles. Pero la clave para la variable de 3 niveles se titula con el nombre de la variable de 3 niveles y quiero que sea un título que tenga un espacio de caracteres. ¿Cómo puedo cambiar el nombre del título de la leyenda?
Cosas que he probado que no parecen funcionar (¿dónde abp
está mi objeto ggplot2?):
abp <- abp + opts(legend.title="Town Name")
abp <- abp + scale_fill_continuous("Town Name")
abp <- abp + opts(group="Town Name")
abp <- abp + opts(legend.title="Town Name")
Datos de ejemplo:
ex.data <- data.frame(DV=rnorm(2*4*3), V2=rep(1:2,each=4*3), V4=rep(1:4,each=3), V3=1:3)
fuente
theme_get()
proporciona la misma referencia en la consola.Respuestas:
Otra opción es usar
Por ejemplo, el ejemplo de Chase se vería así:
y da la cifra:
fuente
Puede cambiar el título de la leyenda modificando la escala de esa leyenda. Aquí hay un ejemplo usando el conjunto de datos de CO2
EDITAR:
Usando los datos de ejemplo de arriba, aquí hay una solución de trabajo. Creo que esto imita la trama que @drknexus está tratando de crear. Como nota al margen, si alguien puede explicar por qué tenemos que tratar V3 como un factor para que se asigne a la leyenda, lo agradecería.
fuente
scale_colour_discrete()
y el código con el que está trabajando es obviamente un poco diferente. No sé cuál es ese código ...scale_linetype_discrete
espera una variable con valores discretos (factor o carácter, deplyr::is.discrete
), consulte el código src en Github, j.mp/ejaRRT . Buena respuesta (+1).