Hola Neo,
esto es lo mejor que me ha salido. A ver si por lo menos te ayuda.
Un saludo
colores<-c("black", "green", "red",
"steelblue", "purple") #creamos el vector de 5 colores que
usaremos para unificar luego la leyenda y el grafico
xyplot(V5 ~ dia | sol, groups=con, layout=c(1, 3), type= "l", pch=1,
par.settings=simpleTheme(col=colores, col.line=colores),
auto.key=list(title= "Con",space="right",border=F,
columns=1,cex=0.7,lines=T,points=F,col=colores),
scales=list(x=list(relation='same'), y=list(relation='same')),
data=mat,
strip.left = T,
as.table = T,
between = list(y = 0.5)
)
---
-----------------------------------------
El mar, 6/8/13, neo <ericconchamunoz en gmail.com> escribió:
Asunto: [R-es] Agrupar los terminos de la leyenda
Para: "Lista R" <r-help-es en r-project.org>
Fecha: martes, 6 de agosto, 2013 19:01
Estimada comunidad, hice un grafico
con 3 paneles (asi creo que se dice,
no?) usando lattice y tengo 15 diferentes curvas
distribuidas entre
estos 3 paneles, 5 curvas en cada uno de ellos.
Cuando agrego una leyenda automatica me aparecen las 15
curvas todas
juntas y mezcladas las que corresponden a diferentes
paneles, ya que las
ordena de acuerdo a la condicion "groups=..." que uno indica
en el
codigo, y no de acuerdo a "| factor" que es lo que necesito.
Ademas
utiliza diferentes colores para las 16 diferentes curvas,
pero yo
necesito que use solo 5 y los mismos en cada panel, es
decir, que para
asignar los colores use "| factor" y no "groups=" que es lo
que, parece,
hace por defecto.
Hay algun modo de hacer esto automaticamente ?
O se debe hacer a mano ? si es asi, alguien sabe como se
hace ?
El codigo que use para el grafico:
xYplot(mat[,5] ~ dia | sol, con, data=mat, xlab="Time
(days)",
ylab="Growth (as % of control)" ,type="l", layout=c(1,3),
auto.key=list(space="right",columns=1))
Adjunto el grafico que me sale y los datos.
Muchas gracias de antemano ...
Eric.
-----Adjunto en línea a continuación-----
_______________________________________________
R-help-es mailing list
R-help-es en r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: neo.jpeg
Type: image/jpeg
Size: 47624 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20130807/1755a351/attachment-0001.jpeg>
Hola,
Aunque un poco más elaborado, el resultado me parece más limpio (adjunto
gráfico).
He utilizado gran parte del código de "pepecb".
Por otro lado (Neo) es recomendable que cuando incluyas una duda en la
lista des también referencia de su sesión (comando de R: sesionInfo). La
función que usas "xYplot()" es del paquete "Hmisc" y aunque
está basada en
el paquete lattice, la función no es igual a la "xyplot()".
Saludos,
Carlos Ortega
www.qualityexcellence.es
#---------------------------------------------------------
library(lattice)
# Separate panels for each "sol"
colores<-c("black", "green", "red",
"steelblue", "purple")
dec.df <- mat[mat$sol=="dec",]
dec.gr <- xyplot(
V5 ~ dia
,groups=con
,data=dec.df
,type="l", pch=1
,main="DEC"
,par.settings=simpleTheme(col=colores , col.line=colores)
,auto.key=list(title=
"Con",space="right",border=F,
columns=1,cex=0.7,lines=T,points=F,col=colores)
,scales=list(x=list(relation='same'),
y=list(relation='same'))
)
lim.df <- mat[mat$sol=="lim",]
lim.gr <- xyplot(
V5 ~ dia
,groups=con
,data=lim.df
,type="l", pch=1
,main="LIM"
,par.settings=simpleTheme(col=colores , col.line=colores)
,auto.key=list(title= "Con",space="right",border=F,
columns=1,cex=0.7,lines=T,points=F,col=colores)
,scales=list(x=list(relation='same'), y=list(relation='same'))
)
dol.df <- mat[mat$sol=="dol",]
dol.gr <- xyplot(
V5 ~ dia
,groups=con
,data=dol.df
,type="l", pch=1
,main="DOL"
,par.settings=simpleTheme(col=colores , col.line=colores)
,auto.key=list(title= "Con",space="right",border=F,
columns=1,cex=0.7,lines=T,points=F,col=colores)
,scales=list(x=list(relation='same'), y=list(relation='same'))
)
#--------- arrange the three plots horizontally
print(dec.gr, position=c(0, 0.65, 1, 1), more=TRUE)
print(lim.gr, position=c(0, 0.33, 1, 0.68), more=TRUE)
print(dol.gr, position=c(0, 0.02, 1, 0.36))
[image: Imágenes integradas 1]
El 7 de agosto de 2013 11:05, pepeceb <pepeceb en yahoo.es> escribió:
> Hola Neo,
> esto es lo mejor que me ha salido. A ver si por lo menos te ayuda.
> Un saludo
>
>
>
>
>
>
> colores<-c("black", "green", "red",
"steelblue", "purple") #creamos el
> vector de 5 colores que usaremos para unificar luego la leyenda y el
grafico
>
>
> xyplot(V5 ~ dia | sol, groups=con, layout=c(1, 3), type= "l",
pch=1,
> par.settings=simpleTheme(col=colores, col.line=colores),
> auto.key=list(title= "Con",space="right",border=F,
> columns=1,cex=0.7,lines=T,points=F,col=colores),
> scales=list(x=list(relation='same'),
y=list(relation='same')), data=mat,
> strip.left = T,
> as.table = T,
> between = list(y = 0.5)
>
> )
>
>
>
>
>
>
>
> ---
> -----------------------------------------
> El mar, 6/8/13, neo <ericconchamunoz en gmail.com> escribió:
>
> Asunto: [R-es] Agrupar los terminos de la leyenda
> Para: "Lista R" <r-help-es en r-project.org>
> Fecha: martes, 6 de agosto, 2013 19:01
>
> Estimada comunidad, hice un grafico
> con 3 paneles (asi creo que se dice,
> no?) usando lattice y tengo 15 diferentes curvas
> distribuidas entre
> estos 3 paneles, 5 curvas en cada uno de ellos.
>
> Cuando agrego una leyenda automatica me aparecen las 15
> curvas todas
> juntas y mezcladas las que corresponden a diferentes
> paneles, ya que las
> ordena de acuerdo a la condicion "groups=..." que uno indica
> en el
> codigo, y no de acuerdo a "| factor" que es lo que necesito.
> Ademas
> utiliza diferentes colores para las 16 diferentes curvas,
> pero yo
> necesito que use solo 5 y los mismos en cada panel, es
> decir, que para
> asignar los colores use "| factor" y no "groups=" que
es lo
> que, parece,
> hace por defecto.
>
> Hay algun modo de hacer esto automaticamente ?
>
> O se debe hacer a mano ? si es asi, alguien sabe como se
> hace ?
>
>
>
> El codigo que use para el grafico:
>
> xYplot(mat[,5] ~ dia | sol, con, data=mat, xlab="Time
> (days)",
> ylab="Growth (as % of control)" ,type="l",
layout=c(1,3),
> auto.key=list(space="right",columns=1))
>
> Adjunto el grafico que me sale y los datos.
>
> Muchas gracias de antemano ...
>
> Eric.
>
> -----Adjunto en línea a continuación-----
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
--
Saludos,
Carlos Ortega
www.qualityexcellence.es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20130807/cc0f5a25/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: image/png
Size: 42207 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20130807/cc0f5a25/attachment-0001.png>
Ok, lo hare, aunque no tenia idea que existia y era relevante la informacion de la sesion ... esa Y mayuscula en xyplot se me paso de intentos anteriores, sorry ... gracias a todos por su tiempo y las sugerencias. Saludos, Eric. On 08/07/2013 08:32 AM, Carlos Ortega wrote:> Hola, > > Aunque un poco más elaborado, el resultado me parece más limpio (adjunto > gráfico). > He utilizado gran parte del código de "pepecb". > > Por otro lado (Neo) es recomendable que cuando incluyas una duda en la > lista des también referencia de su sesión (comando de R: sesionInfo). La > función que usas "xYplot()" es del paquete "Hmisc" y aunque está basada > en el paquete lattice, la función no es igual a la "xyplot()". > > Saludos, > Carlos Ortega > www.qualityexcellence.es <http://www.qualityexcellence.es> > > #--------------------------------------------------------- > library(lattice) > # Separate panels for each "sol" > colores<-c("black", "green", "red", "steelblue", "purple") > > dec.df <- mat[mat$sol=="dec",] > dec.gr <http://dec.gr> <- xyplot( > V5 ~ dia > ,groups=con > ,data=dec.df > ,type="l", pch=1 > ,main="DEC" > ,par.settings=simpleTheme(col=colores , col.line=colores) > ,auto.key=list(title= "Con",space="right",border=F, > > columns=1,cex=0.7,lines=T,points=F,col=colores) > ,scales=list(x=list(relation='same'), > y=list(relation='same')) > ) > > > lim.df <- mat[mat$sol=="lim",] > lim.gr <http://lim.gr> <- xyplot( > V5 ~ dia > ,groups=con > ,data=lim.df > ,type="l", pch=1 > ,main="LIM" > ,par.settings=simpleTheme(col=colores , col.line=colores) > ,auto.key=list(title= "Con",space="right",border=F, > columns=1,cex=0.7,lines=T,points=F,col=colores) > ,scales=list(x=list(relation='same'), y=list(relation='same')) > ) > > > dol.df <- mat[mat$sol=="dol",] > dol.gr <http://dol.gr> <- xyplot( > V5 ~ dia > ,groups=con > ,data=dol.df > ,type="l", pch=1 > ,main="DOL" > ,par.settings=simpleTheme(col=colores , col.line=colores) > ,auto.key=list(title= "Con",space="right",border=F, > columns=1,cex=0.7,lines=T,points=F,col=colores) > ,scales=list(x=list(relation='same'), y=list(relation='same')) > ) > > #--------- arrange the three plots horizontally > print(dec.gr <http://dec.gr>, position=c(0, 0.65, 1, 1), more=TRUE) > print(lim.gr <http://lim.gr>, position=c(0, 0.33, 1, 0.68), more=TRUE) > print(dol.gr <http://dol.gr>, position=c(0, 0.02, 1, 0.36)) > > > Imágenes integradas 1 > > > > > > El 7 de agosto de 2013 11:05, pepeceb <pepeceb en yahoo.es > <mailto:pepeceb en yahoo.es>> escribió: > > Hola Neo, > esto es lo mejor que me ha salido. A ver si por lo menos te ayuda. > Un saludo > > > > > > > colores<-c("black", "green", "red", "steelblue", "purple") #creamos > el vector de 5 colores que usaremos para unificar luego la leyenda y > el grafico > > > xyplot(V5 ~ dia | sol, groups=con, layout=c(1, 3), type= "l", pch=1, > par.settings=simpleTheme(col=colores, col.line=colores), > auto.key=list(title= "Con",space="right",border=F, > columns=1,cex=0.7,lines=T,points=F,col=colores), > scales=list(x=list(relation='same'), y=list(relation='same')), > data=mat, > strip.left = T, > as.table = T, > between = list(y = 0.5) > > ) > > > > > > > > --- > ----------------------------------------- > El mar, 6/8/13, neo <ericconchamunoz en gmail.com > <mailto:ericconchamunoz en gmail.com>> escribió: > > Asunto: [R-es] Agrupar los terminos de la leyenda > Para: "Lista R" <r-help-es en r-project.org > <mailto:r-help-es en r-project.org>> > Fecha: martes, 6 de agosto, 2013 19:01 > > Estimada comunidad, hice un grafico > con 3 paneles (asi creo que se dice, > no?) usando lattice y tengo 15 diferentes curvas > distribuidas entre > estos 3 paneles, 5 curvas en cada uno de ellos. > > Cuando agrego una leyenda automatica me aparecen las 15 > curvas todas > juntas y mezcladas las que corresponden a diferentes > paneles, ya que las > ordena de acuerdo a la condicion "groups=..." que uno indica > en el > codigo, y no de acuerdo a "| factor" que es lo que necesito. > Ademas > utiliza diferentes colores para las 16 diferentes curvas, > pero yo > necesito que use solo 5 y los mismos en cada panel, es > decir, que para > asignar los colores use "| factor" y no "groups=" que es lo > que, parece, > hace por defecto. > > Hay algun modo de hacer esto automaticamente ? > > O se debe hacer a mano ? si es asi, alguien sabe como se > hace ? > > > > El codigo que use para el grafico: > > xYplot(mat[,5] ~ dia | sol, con, data=mat, xlab="Time > (days)", > ylab="Growth (as % of control)" ,type="l", layout=c(1,3), > auto.key=list(space="right",columns=1)) > > Adjunto el grafico que me sale y los datos. > > Muchas gracias de antemano ... > > Eric. > > -----Adjunto en línea a continuación----- > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org <mailto:R-help-es en r-project.org> > https://stat.ethz.ch/mailman/listinfo/r-help-es > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org <mailto:R-help-es en r-project.org> > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > > -- > Saludos, > Carlos Ortega > www.qualityexcellence.es <http://www.qualityexcellence.es>