2011-08-19 17 views
13

Creación de los siguientes resultados de la trama en la leyenda se coloca verticalmente, a la derecha, en lugar de en la parte inferior horizontalmente tal como se indica en la llamada a opts():Cambio leyenda posición/dirección utilizando TPO() no tiene efecto

dat <- data.frame(x = runif(10), y = runif(10), 
        grp = rep(letters[1:2],each = 5)) 

ggplot(data = dat, aes(x = x, y = y, colour = grp)) + 
    geom_point() + 
    opts(legend.position = "bottom", legend.direction = "horizontal") + 
    theme_bw() 

enter image description here

¿Cómo consigo la leyenda en el lugar correcto?

Respuesta

20

El problema es que theme_bw() se coloca después de la llamada a opts() y restablece algunos valores predeterminados. Sólo tiene que colocar theme_bw() antes opts():

ggplot(data = dat, aes(x = x, y = y, colour = grp)) + 
    geom_point() + 
    theme_bw() + 
    opts(legend.position = "bottom", legend.direction = "horizontal") 

Nota: Desde la versión 0.9.2 opts ha sido replaced por theme:

theme(legend.position = "bottom", legend.direction = "horizontal") 

enter image description here

+1

+1 astuto ...... –

Cuestiones relacionadas