
Pessoal, ## como fazer repeticao com xyplot para colocar numa mesma janela? xyl = lapply(1:4, function(i) data.frame(x=1:100, y=dnorm(1:100,50,10*i))) require(lattice); require(gridExtra) grid.arrange(xyplot(y~x, xyl[[1]], panel='llines'), xyplot(y~x, xyl[[2]], panel='llines'), xyplot(y~x, xyl[[3]], panel='llines'), xyplot(y~x, xyl[[4]], panel='llines'), nrow=2) ## como evitar repetir essas linhas para cada elemento? ## uma forma que sei e' assim: do.call(function(...) grid.arrange(...), lapply(xyl, function(d) xyplot(y~x,d, panel='llines'))) ## mas neste caso as escalas sao diferentes...

Elias, Não saberia fazer usando xyplot, mas com função ggplot2::qplot eu faria assim: xyl = lapply(1:4, function(i) data.frame(x=1:100, y=dnorm(1:100,50,10*i), g = paste0("Grupo ",i))) xyd <- do.call(rbind, xyl) library(ggplot2) qplot(x, y, data = xyd, geom = "path") + facet_wrap(~g) Abraço Em 19 de novembro de 2013 07:51, Elias T Krainski < eliaskrainski@yahoo.com.br> escreveu:
Pessoal,
## como fazer repeticao com xyplot para colocar numa mesma janela?
xyl = lapply(1:4, function(i) data.frame(x=1:100, y=dnorm(1:100,50,10*i)))
require(lattice); require(gridExtra) grid.arrange(xyplot(y~x, xyl[[1]], panel='llines'), xyplot(y~x, xyl[[2]], panel='llines'), xyplot(y~x, xyl[[3]], panel='llines'), xyplot(y~x, xyl[[4]], panel='llines'), nrow=2)
## como evitar repetir essas linhas para cada elemento?
## uma forma que sei e' assim:
do.call(function(...) grid.arrange(...), lapply(xyl, function(d) xyplot(y~x,d, panel='llines')))
## mas neste caso as escalas sao diferentes... _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Luís Gustavo Silva e Silva

Elias, Com ajuda do Maurício conseguimos usar a função xyplot e plotar todos os gráficos na mesma escala. xyplot(y~x|g, data = xyd, panel="llines") Abraço Em 19 de novembro de 2013 08:33, Luís Gustavo <lgsilvaesilva@gmail.com>escreveu:
Elias,
Não saberia fazer usando xyplot, mas com função ggplot2::qplot eu faria assim:
xyl = lapply(1:4, function(i) data.frame(x=1:100, y=dnorm(1:100,50,10*i), g = paste0("Grupo ",i)))
xyd <- do.call(rbind, xyl)
library(ggplot2) qplot(x, y, data = xyd, geom = "path") + facet_wrap(~g)
Abraço
Em 19 de novembro de 2013 07:51, Elias T Krainski < eliaskrainski@yahoo.com.br> escreveu:
Pessoal,
## como fazer repeticao com xyplot para colocar numa mesma janela?
xyl = lapply(1:4, function(i) data.frame(x=1:100, y=dnorm(1:100,50,10*i)))
require(lattice); require(gridExtra) grid.arrange(xyplot(y~x, xyl[[1]], panel='llines'), xyplot(y~x, xyl[[2]], panel='llines'), xyplot(y~x, xyl[[3]], panel='llines'), xyplot(y~x, xyl[[4]], panel='llines'), nrow=2)
## como evitar repetir essas linhas para cada elemento?
## uma forma que sei e' assim:
do.call(function(...) grid.arrange(...), lapply(xyl, function(d) xyplot(y~x,d, panel='llines')))
## mas neste caso as escalas sao diferentes... _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Luís Gustavo Silva e Silva
-- Luís Gustavo Silva e Silva

Elias, Como o eixo y é densidade para todos os gráficos e o x tem domínio comum, você pode usar a xyplot assim. require(lattice) require(plyr) xyl <- lapply(1:4, function(i) data.frame(x=1:100, y=dnorm(1:100,50,10*i))) names(xyl) <- seq_along(xyl) xyl <- ldply(xyl) str(xyl) xyplot(y~x|.id, xyl, panel='llines', scales=list(y=list(relation="free"))) À disposição. Walmes.

Caros, Tentei aproveitar as sugestões aqui colocadas mas ainda não consegui resolver meu problema. Acredito que minha solução esteja neste help: http://stat.ethz.ch/R-manual/R-devel/library/lattice/html/xyplot.html A dificuldade maior é que os exemplos não são muito parecidos com o que preciso. Continuarei tentando. Maurício 2013/11/19 walmes . <walmeszeviani@gmail.com>
Elias,
Como o eixo y é densidade para todos os gráficos e o x tem domínio comum, você pode usar a xyplot assim.
require(lattice) require(plyr)
xyl <- lapply(1:4, function(i) data.frame(x=1:100, y=dnorm(1:100,50,10*i))) names(xyl) <- seq_along(xyl)
xyl <- ldply(xyl) str(xyl)
xyplot(y~x|.id, xyl, panel='llines', scales=list(y=list(relation="free")))
À disposição. Walmes.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
participantes (4)
-
Elias T Krainski
-
Luís Gustavo
-
Maurício Lordêlo
-
walmes .