Hola,
Entiendo que cuando dices localizar la leyenda en la parte de arriba en el
espacio que has dejado, te refieres al margen superior sobre los tres
gráficos.
Si es lo anterior entonces con el enfoque que estás utilizando creo que no
vas a poder hacerlo. La función "legend()" está asociada a un plot y
su
representación siempre es dentro del plot.
Hay una manera de hacerlo, es un poco tediosa pero vaya creo que bastante
directa.
Se trata de utilizar la función "layout()" la idea sería la siguiente:
- Definiría dos regiones: una superior (dos tercios de la pantalla) y
otra inferior (un tercio de la pantalla).
- Sobre la parte superior pintaría las tres series "ts.plot()".
- Y sobre la parte inferior pintaría un plot() pero sin ejes, sin datos
y centrado, sobre el que solamente incluiría el legend(). Sería una leyenda
común para todos los gráficos. Mi preferencia es que la leyenda quede
siempre bajo los gráfico, pero es directo cambiar la distribución.
Saludos,
Carlos Ortega
www.qualityexcellence.es
El 14 de septiembre de 2012 18:14, Javier Villacampa González <
javier.villacampa.gonzalez@gmail.com> escribió:
> Hola buenas, acualmente estoy haciendo unas gráficas que quiero poner de
> tres en tres. El problema es el siguiente, no siempre cave la leyenda
> dentro de la caja y agrandar la caja no es una una opción ya que no
> quedaría elegante en todos los gráficos.
>
> He intentado dejar un hueco arriba en el dibujo para allí poner la leyenda
> con la orden legend. Pero me es imposible. ¿Álguna idea?
>
> Os dejao un script de ejemplo, para ver si me podeis ayudar.
>
> Gracias por adelantado Javier.
>
>
>
>
###################################################################################################################################
> #
> EJEMPLO
> LEYENDA
> #
>
>
###################################################################################################################################
> cm <- 17 # ask width of the pictures. It is as normal paper
> inchW <- cm/2.54 # compute the inch for the pictures
> inchH <- cm/2.54 / (1+sqrt(5))*2 *1.2
>
> x11(height=inchH ,width= inchW, pointsize=12)
> par(mfrow=c(1,3), las=1, cex.axis=1, cex.main=0.95, cex.lab=1,
> mai=c(0.65,0.65,1,0.2))
>
> LimiteY<-c(-3,3)
>
>
> x1 <- rnorm(10)
> y1 <- rnorm(10)
> z1 <- rnorm(10)
>
> d1 <- cbind(x1, y1, z1)
>
> x2 <- rnorm(10)
> y2 <- rnorm(10)
> z2 <- rnorm(10)
>
> d2 <- cbind(x2, y2, z3)
>
> x3 <- rnorm(10)
> y3 <- rnorm(10)
> z3 <- rnorm(10)
>
> d3 <- cbind(x3, y3, z3)
>
> ts.plot(d1, col=1:3, ylim= LimiteY)
> ts.plot(d2, col=1:3, ylim= LimiteY)
> title("¿Sacando fuera la leyenda?
> Ese gran misterio", line=0.5)
> ts.plot(d3, col=1:3, ylim= LimiteY)
>
> legend("topright", c("Negro", "Rojo",
"verde"), col=1:3, fill=1:3) # Me
> gustaría dejar la leyenda fuera del dibuja en el hueco que he dejardo
> arriba de los tros dibujos con esta misma intención
>
> #Otras pruebas
> legend(x= 6, y= 4, c("Negro", "Rojo",
"verde"), col=1:3, fill=1:3)
> legend(x= 6, y= 4.5, c("Negro", "Rojo",
"verde"), col=1:3, fill=1:3)
>
>
>
###################################################################################################################################
>
> [[alternative HTML version deleted]]
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
--
Saludos,
Carlos Ortega
www.qualityexcellence.es
[[alternative HTML version deleted]]