
Saudações a todos, Observando este exemplo (help da função "ts") z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12) plot(z) tem-se três gráficos empilhados, com uma série em cada um. Gostaria de saber se há possibilidade de que, em cada um dos gráficos, acrescentar outras linhas para efeito de comparação. Por exemplo, suponha que eu construa um único gráfico com quatro linhas da seguinte forma: time<-c(5,7,9,11,13) m1<-c(94.1,91.9,92.1,92.8,92.3) m2<-c(96.3,95.7,95.8,95.1,95.6) m3<-c(91.6,91.0,91.1,90.0,88.6) m4<-c(95.9,92.9,100.0,90.9,91.1) plot(tempo, m1,type="b",main="Percentual de IC´s que contém o parâmetro para X",xlab="tempo",ylab="%",col="blue",ylim=c(70,100)) lines(tempo, m2,col="red",type="b") lines(tempo,m3,col="green",type="b") lines(tempo, m4,col="black",type="b") legend(12.5,85,c("m1","m2","m3","m4"),col=c("blue","red","green","black"),pch=rep(20,2)) No exemplo do help, são três séries em três gráficos empilhados. Há possibilidade de acrescentar linhas a cada uma das séries, ou seja, em cada um dos três gráficos empilhados ter quatro linhas? Grato, Maurício

Bom dia, Já testou ts.plot {stats}? ### para o exemplo dado... z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12) plot(z) ts.plot(z) ts.plot(z, lty=c(1:4), col=c(1:4)) ### no help tem outro exemplo... ?ts.plot Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]

Éder, obrigado pela atenção. Não consegui. "ts.plot" constrói o gráfico com várias séries porém apenas um. Minha intenção é produzir três gráficos (como o "ts") com o mesmo eixo x e em cada um deles ter quatro linhas. Grato, Maurício 2013/10/31 Éder Comunello <comunello.eder@gmail.com>
Bom dia,
Já testou ts.plot {stats}?
### para o exemplo dado...
z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12)
plot(z)
ts.plot(z)
ts.plot(z, lty=c(1:4), col=c(1:4))
### no help tem outro exemplo... ?ts.plot
Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]
_______________________________________________ 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.

Caros, Continuo "quebrando" a cabeça para tentar produzir o gráfico que preciso. Consegui chegar próximo mas ainda não é o ideal. No CRM abaixo, o gráfico é construído porém preciso: 1) acrescentar a legenda para cada uma das linhas (estou denominando cada uma delas de m1,m2,m3 e m4); 2) substituir os números (1, 2 e 3) que aparecem nas divisões em amarelo por nomes (pode ser intercepto, tratamento B e tratamento C, respectivamente). Alguém teria alguma dica? m1a<-c(94.1,91.9,92.1,92.8,92.3) m2a<-c(96.3,95.7,95.8,95.1,95.6) m3a<-c(91.6,91.0,91.1,90.0,88.6) m4a<-c(95.9,92.9,100.0,90.9,91.1) mma=c(m1a,m2a,m3a,m4a) mat1=matrix(mma,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1b<-c(14.1,11.9,16.1,12.8,9.3) m2b<-c(16.3,15.7,19.8,19.1,9.6) m3b<-c(11.6,11.0,19.1,9.0,8.6) m4b<-c(15.9,12.9,10.0,19.9,11.1) mmb=c(m1b,m2b,m3b,m4b) mat2=matrix(mmb,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1c<-c(34.1,51.9,42.1,32.8,62.3) m2c<-c(36.3,45.7,35.8,55.1,75.6) m3c<-c(51.6,71.0,71.1,70.0,68.6) m4c<-c(45.9,42.9,40.0,30.9,51.1) mmc=c(m1c,m2c,m3c,m4c) mat3=matrix(mmc,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) matriz=matrix(c(mat1,mat2,mat3),5,12) a=ts(matriz,frequency = 0.5, start = c(2.5, 2)) require(lattice) xyplot(a, screens = c(1,1,1,1,2,2,2,2,3,3,3,3),xlab = "medidas de tempo",ylab = "%",col=c(1:4)) Utilizei este exemplo do help como referencia: ### Example with simpler data, few data points set.seed(1) z <- ts(cbind(a = 1:5, b = 11:15, c = 21:25) + rnorm(5)) xyplot(z, screens = list(a = "primary (a)", "other (b & c)"),type = list(a = c("p", "h"), b = c("p", "s"), "o"),pch = list(a = 2, c = 3), auto.key = list(type = "o")) Em 31 de outubro de 2013 14:32, Maurício Lordêlo <mslordelo@gmail.com>escreveu:
Éder, obrigado pela atenção. Não consegui. "ts.plot" constrói o gráfico com várias séries porém apenas um. Minha intenção é produzir três gráficos (como o "ts") com o mesmo eixo x e em cada um deles ter quatro linhas. Grato, Maurício
2013/10/31 Éder Comunello <comunello.eder@gmail.com>
Bom dia,
Já testou ts.plot {stats}?
### para o exemplo dado...
z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12)
plot(z)
ts.plot(z)
ts.plot(z, lty=c(1:4), col=c(1:4))
### no help tem outro exemplo... ?ts.plot
Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]
_______________________________________________ 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.

Maurício, estou sem tempo agora, mas acho que dá pra fazer o que você quer com o ggplot2. No meu blog, fiz um gráfico parecido<http://prafalardecoisas.wordpress.com/2013/11/03/ugly-bar-plot-graphic-and-a-simple-alternative-rstats/>, coloquei inclusive o sript lá. A única diferença para o seu gráfico é que não tenho três paineis. No ggplot2, pra condicionar em paineis, usa-seo comando facet_wrap(). Creio que isso faria o job. Dê uma olhada. Se tiver um tempo, amanhã tento implementar uma solução. abc M 2013/11/3 Maurício Lordêlo <mslordelo@gmail.com>
Caros, Continuo "quebrando" a cabeça para tentar produzir o gráfico que preciso. Consegui chegar próximo mas ainda não é o ideal. No CRM abaixo, o gráfico é construído porém preciso: 1) acrescentar a legenda para cada uma das linhas (estou denominando cada uma delas de m1,m2,m3 e m4); 2) substituir os números (1, 2 e 3) que aparecem nas divisões em amarelo por nomes (pode ser intercepto, tratamento B e tratamento C, respectivamente). Alguém teria alguma dica? m1a<-c(94.1,91.9,92.1,92.8,92.3) m2a<-c(96.3,95.7,95.8,95.1,95.6) m3a<-c(91.6,91.0,91.1,90.0,88.6) m4a<-c(95.9,92.9,100.0,90.9,91.1) mma=c(m1a,m2a,m3a,m4a) mat1=matrix(mma,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1b<-c(14.1,11.9,16.1,12.8,9.3) m2b<-c(16.3,15.7,19.8,19.1,9.6) m3b<-c(11.6,11.0,19.1,9.0,8.6) m4b<-c(15.9,12.9,10.0,19.9,11.1) mmb=c(m1b,m2b,m3b,m4b) mat2=matrix(mmb,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1c<-c(34.1,51.9,42.1,32.8,62.3) m2c<-c(36.3,45.7,35.8,55.1,75.6) m3c<-c(51.6,71.0,71.1,70.0,68.6) m4c<-c(45.9,42.9,40.0,30.9,51.1) mmc=c(m1c,m2c,m3c,m4c) mat3=matrix(mmc,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4")))
matriz=matrix(c(mat1,mat2,mat3),5,12) a=ts(matriz,frequency = 0.5, start = c(2.5, 2)) require(lattice) xyplot(a, screens = c(1,1,1,1,2,2,2,2,3,3,3,3),xlab = "medidas de tempo",ylab = "%",col=c(1:4))
Utilizei este exemplo do help como referencia:
### Example with simpler data, few data points set.seed(1) z <- ts(cbind(a = 1:5, b = 11:15, c = 21:25) + rnorm(5)) xyplot(z, screens = list(a = "primary (a)", "other (b & c)"),type = list(a = c("p", "h"), b = c("p", "s"), "o"),pch = list(a = 2, c = 3), auto.key = list(type = "o"))
Em 31 de outubro de 2013 14:32, Maurício Lordêlo <mslordelo@gmail.com>escreveu:
Éder, obrigado pela atenção.
Não consegui. "ts.plot" constrói o gráfico com várias séries porém apenas um. Minha intenção é produzir três gráficos (como o "ts") com o mesmo eixo x e em cada um deles ter quatro linhas. Grato, Maurício
2013/10/31 Éder Comunello <comunello.eder@gmail.com>
Bom dia,
Já testou ts.plot {stats}?
### para o exemplo dado...
z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12)
plot(z)
ts.plot(z)
ts.plot(z, lty=c(1:4), col=c(1:4))
### no help tem outro exemplo... ?ts.plot
Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]
_______________________________________________ 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.
_______________________________________________ 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.
-- Manoel Galdino https://sites.google.com/site/galdinomcz/

Obrigado Manoel. Vou dar uma olhada e tentarei adequar. Qualquer dúvida retornarei. Abraço Em 3 de novembro de 2013 21:35, Manoel Galdino <mcz.fea@gmail.com> escreveu:
Maurício,
estou sem tempo agora, mas acho que dá pra fazer o que você quer com o ggplot2. No meu blog, fiz um gráfico parecido<http://prafalardecoisas.wordpress.com/2013/11/03/ugly-bar-plot-graphic-and-a-simple-alternative-rstats/>, coloquei inclusive o sript lá. A única diferença para o seu gráfico é que não tenho três paineis. No ggplot2, pra condicionar em paineis, usa-seo comando facet_wrap(). Creio que isso faria o job. Dê uma olhada. Se tiver um tempo, amanhã tento implementar uma solução.
abc M
2013/11/3 Maurício Lordêlo <mslordelo@gmail.com>
Caros, Continuo "quebrando" a cabeça para tentar produzir o gráfico que preciso. Consegui chegar próximo mas ainda não é o ideal. No CRM abaixo, o gráfico é construído porém preciso: 1) acrescentar a legenda para cada uma das linhas (estou denominando cada uma delas de m1,m2,m3 e m4); 2) substituir os números (1, 2 e 3) que aparecem nas divisões em amarelo por nomes (pode ser intercepto, tratamento B e tratamento C, respectivamente). Alguém teria alguma dica? m1a<-c(94.1,91.9,92.1,92.8,92.3) m2a<-c(96.3,95.7,95.8,95.1,95.6) m3a<-c(91.6,91.0,91.1,90.0,88.6) m4a<-c(95.9,92.9,100.0,90.9,91.1) mma=c(m1a,m2a,m3a,m4a) mat1=matrix(mma,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1b<-c(14.1,11.9,16.1,12.8,9.3) m2b<-c(16.3,15.7,19.8,19.1,9.6) m3b<-c(11.6,11.0,19.1,9.0,8.6) m4b<-c(15.9,12.9,10.0,19.9,11.1) mmb=c(m1b,m2b,m3b,m4b) mat2=matrix(mmb,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1c<-c(34.1,51.9,42.1,32.8,62.3) m2c<-c(36.3,45.7,35.8,55.1,75.6) m3c<-c(51.6,71.0,71.1,70.0,68.6) m4c<-c(45.9,42.9,40.0,30.9,51.1) mmc=c(m1c,m2c,m3c,m4c) mat3=matrix(mmc,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4")))
matriz=matrix(c(mat1,mat2,mat3),5,12) a=ts(matriz,frequency = 0.5, start = c(2.5, 2)) require(lattice) xyplot(a, screens = c(1,1,1,1,2,2,2,2,3,3,3,3),xlab = "medidas de tempo",ylab = "%",col=c(1:4))
Utilizei este exemplo do help como referencia:
### Example with simpler data, few data points set.seed(1) z <- ts(cbind(a = 1:5, b = 11:15, c = 21:25) + rnorm(5)) xyplot(z, screens = list(a = "primary (a)", "other (b & c)"),type = list(a = c("p", "h"), b = c("p", "s"), "o"),pch = list(a = 2, c = 3), auto.key = list(type = "o"))
Em 31 de outubro de 2013 14:32, Maurício Lordêlo <mslordelo@gmail.com>escreveu:
Éder, obrigado pela atenção.
Não consegui. "ts.plot" constrói o gráfico com várias séries porém apenas um. Minha intenção é produzir três gráficos (como o "ts") com o mesmo eixo x e em cada um deles ter quatro linhas. Grato, Maurício
2013/10/31 Éder Comunello <comunello.eder@gmail.com>
Bom dia,
Já testou ts.plot {stats}?
### para o exemplo dado...
z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12)
plot(z)
ts.plot(z)
ts.plot(z, lty=c(1:4), col=c(1:4))
### no help tem outro exemplo... ?ts.plot
Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]
_______________________________________________ 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.
_______________________________________________ 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.
-- Manoel Galdino https://sites.google.com/site/galdinomcz/
_______________________________________________ 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.

Veja se é mais ou menos isso que você quer: matriz <- as.data.frame(matriz) names(matriz) <- paste("series", 1:12) matriz$tempo <- 1:nrow(matriz) meltenMatriz <- melt(matriz, id='tempo' ) meltenMatriz$lbls <- meltenMatriz$variable p <- ggplot(meltenMatriz, aes(x = tempo, y = value, group=variable)) + geom_line(aes(colour=variable)) direct.label(p, list("top.points", rot=10, cex=1, fontface="plain", fontfamily="serif", alpha=0.9)) É possível colocar os labels em outras posições. Dê um google por ggplo2 direc labels Ou colocar as legendas como caixinhas ao lado do plot. Nesse caso, basta excluir o comando direct.label e rodar print(p), ou apenas p É possível também configurar as cores. abçs Manoel 2013/11/4 Maurício Lordêlo <mslordelo@gmail.com>
Obrigado Manoel. Vou dar uma olhada e tentarei adequar. Qualquer dúvida retornarei. Abraço
Em 3 de novembro de 2013 21:35, Manoel Galdino <mcz.fea@gmail.com>escreveu:
Maurício,
estou sem tempo agora, mas acho que dá pra fazer o que você quer com o ggplot2. No meu blog, fiz um gráfico parecido<http://prafalardecoisas.wordpress.com/2013/11/03/ugly-bar-plot-graphic-and-a-simple-alternative-rstats/>, coloquei inclusive o sript lá. A única diferença para o seu gráfico é que não tenho três paineis. No ggplot2, pra condicionar em paineis, usa-seo comando facet_wrap(). Creio que isso faria o job. Dê uma olhada. Se tiver um tempo, amanhã tento implementar uma solução.
abc M
2013/11/3 Maurício Lordêlo <mslordelo@gmail.com>
Caros, Continuo "quebrando" a cabeça para tentar produzir o gráfico que preciso. Consegui chegar próximo mas ainda não é o ideal. No CRM abaixo, o gráfico é construído porém preciso: 1) acrescentar a legenda para cada uma das linhas (estou denominando cada uma delas de m1,m2,m3 e m4); 2) substituir os números (1, 2 e 3) que aparecem nas divisões em amarelo por nomes (pode ser intercepto, tratamento B e tratamento C, respectivamente). Alguém teria alguma dica? m1a<-c(94.1,91.9,92.1,92.8,92.3) m2a<-c(96.3,95.7,95.8,95.1,95.6) m3a<-c(91.6,91.0,91.1,90.0,88.6) m4a<-c(95.9,92.9,100.0,90.9,91.1) mma=c(m1a,m2a,m3a,m4a) mat1=matrix(mma,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1b<-c(14.1,11.9,16.1,12.8,9.3) m2b<-c(16.3,15.7,19.8,19.1,9.6) m3b<-c(11.6,11.0,19.1,9.0,8.6) m4b<-c(15.9,12.9,10.0,19.9,11.1) mmb=c(m1b,m2b,m3b,m4b) mat2=matrix(mmb,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1c<-c(34.1,51.9,42.1,32.8,62.3) m2c<-c(36.3,45.7,35.8,55.1,75.6) m3c<-c(51.6,71.0,71.1,70.0,68.6) m4c<-c(45.9,42.9,40.0,30.9,51.1) mmc=c(m1c,m2c,m3c,m4c) mat3=matrix(mmc,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4")))
matriz=matrix(c(mat1,mat2,mat3),5,12) a=ts(matriz,frequency = 0.5, start = c(2.5, 2)) require(lattice) xyplot(a, screens = c(1,1,1,1,2,2,2,2,3,3,3,3),xlab = "medidas de tempo",ylab = "%",col=c(1:4))
Utilizei este exemplo do help como referencia:
### Example with simpler data, few data points set.seed(1) z <- ts(cbind(a = 1:5, b = 11:15, c = 21:25) + rnorm(5)) xyplot(z, screens = list(a = "primary (a)", "other (b & c)"),type = list(a = c("p", "h"), b = c("p", "s"), "o"),pch = list(a = 2, c = 3), auto.key = list(type = "o"))
Em 31 de outubro de 2013 14:32, Maurício Lordêlo <mslordelo@gmail.com>escreveu:
Éder, obrigado pela atenção.
Não consegui. "ts.plot" constrói o gráfico com várias séries porém apenas um. Minha intenção é produzir três gráficos (como o "ts") com o mesmo eixo x e em cada um deles ter quatro linhas. Grato, Maurício
2013/10/31 Éder Comunello <comunello.eder@gmail.com>
Bom dia,
Já testou ts.plot {stats}?
### para o exemplo dado...
z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12)
plot(z)
ts.plot(z)
ts.plot(z, lty=c(1:4), col=c(1:4))
### no help tem outro exemplo... ?ts.plot
Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]
_______________________________________________ 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.
_______________________________________________ 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.
-- Manoel Galdino https://sites.google.com/site/galdinomcz/
_______________________________________________ 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.
_______________________________________________ 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.
-- Manoel Galdino https://sites.google.com/site/galdinomcz/

Manoel, desculpe a demora em dar um retorno. Fiquei envolvido com outras atividades e me faltou tempo para isso. Tentei usar o que recomendou mas não deu certo. Eu preciso de uma gráfico dividido em três partes, com o mesmo eixo x. Nos comandos que passou, aparecem 12 linhas juntas. Preciso que fiquem separadas em três grupos (tratamentos) com quatro linhas cada (modelos) e uma legenda única. No CMR abaixo, m1A refere-se aos resultados obtidos pro tratamento A através do modelo 1, m3B refere-se aos resultados obtidos pro tratamento B através do mesmo modelo 3, etc. A legenda única deve conter a indicação dos modelos. A separação dos painéis do gráfico devem ser os tratamentos. m1A<-c(94.6,92.6,92.6,92.4,92.6) m2A<-c(96.1,93.9,95.1,92.6,92.5) m3A<-c(91.5,93.8,93.8,94.3,94.6) m4A<-c(95.2,94.4,98.1,95.9,92.4) #mA=c(m1A,m2A,m3A,m4A) mat1=matrix(cbind(m1A,m2A,m3A,m4A),nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1B<-c(94.1,91.9,92.1,92.8,92.3) m2B<-c(96.3,95.7,95.8,95.1,95.6) m3B<-c(91.6,91.0,91.1,90.0,88.6) m4B<-c(95.9,92.9,100.0,90.9,91.1) #mm2=c(m3a,m1a,m4a,m2a) mat2=matrix(cbind(m1B,m2B,m3B,m4B),nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1C<-c(92.8,91.4,91.8,92.7,92.3) m2C<-c(96.4,95.6,96.1,95.3,96.1) m3C<-c(88.5,87.1,84.6,83.0,84.1) m4C<-c(95.2,91.8,99.0,89.4,84.8) mat3=matrix(cbind(m1C,m2C,m3C,m4C),nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) matriz=matrix(c(mat1,mat2,mat3),nrow =5,ncol =12, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4","m1","m2","m3","m4","m1","m2","m3","m4"))) a=ts(matriz,frequency = 0.5, start = c(3, 2)) require(lattice) xyplot(a, screens = c(1,1,1,1,2,2,2,2,3,3,3,3),xlab = "medidas de tempo",ylab = "%",col=c(1:4)) Quando faço xyplot(a, screens = list("Tratamento A", "Tratamento B","Tratamento C"),xlab="medidas de tempo",ylab = "%",col=c(1:4),superpose = TRUE) consigo acrescentar os nomes dos tratamentos e uma legenda (que não é a adequada), porém observo que as linhas não estão corretas, pois não conferem com a do comando anterior. Digitei estes dados em forma de um dataframe que estão no link abaixo https://www.dropbox.com/s/nnkbe8n2sc88esm/dados_grafico.txt Neste caso, tentei dados=read.table("dados_grafico.txt",sep="",header=T) require(lattice) graf=xyplot(acerto ~ tempo | tratamento, data = dados,groups = Modelo,panel = "panel.superpose",panel.groups = "panel.linejoin",xlab = "tempo", key = list(lines = Rows(trellis.par.get("superpose.line"),c(1:3, 1)),text = list(lab = as.character(unique(dados$Modelo))),columns = 4, title = "Modelos")) graf Também sem sucesso. Agradeço qualquer ajuda. Maurício Em 4 de novembro de 2013 12:56, Manoel Galdino <mcz.fea@gmail.com> escreveu:
Veja se é mais ou menos isso que você quer:
matriz <- as.data.frame(matriz) names(matriz) <- paste("series", 1:12)
matriz$tempo <- 1:nrow(matriz) meltenMatriz <- melt(matriz, id='tempo' ) meltenMatriz$lbls <- meltenMatriz$variable
p <- ggplot(meltenMatriz, aes(x = tempo, y = value, group=variable)) + geom_line(aes(colour=variable)) direct.label(p, list("top.points", rot=10, cex=1, fontface="plain", fontfamily="serif", alpha=0.9))
É possível colocar os labels em outras posições. Dê um google por ggplo2 direc labels
Ou colocar as legendas como caixinhas ao lado do plot. Nesse caso, basta excluir o comando direct.label e rodar print(p), ou apenas p
É possível também configurar as cores.
abçs Manoel
2013/11/4 Maurício Lordêlo <mslordelo@gmail.com>
Obrigado Manoel. Vou dar uma olhada e tentarei adequar. Qualquer dúvida retornarei. Abraço
Em 3 de novembro de 2013 21:35, Manoel Galdino <mcz.fea@gmail.com>escreveu:
Maurício,
estou sem tempo agora, mas acho que dá pra fazer o que você quer com o ggplot2. No meu blog, fiz um gráfico parecido<http://prafalardecoisas.wordpress.com/2013/11/03/ugly-bar-plot-graphic-and-a-simple-alternative-rstats/>, coloquei inclusive o sript lá. A única diferença para o seu gráfico é que não tenho três paineis. No ggplot2, pra condicionar em paineis, usa-seo comando facet_wrap(). Creio que isso faria o job. Dê uma olhada. Se tiver um tempo, amanhã tento implementar uma solução.
abc M
2013/11/3 Maurício Lordêlo <mslordelo@gmail.com>
Caros, Continuo "quebrando" a cabeça para tentar produzir o gráfico que preciso. Consegui chegar próximo mas ainda não é o ideal. No CRM abaixo, o gráfico é construído porém preciso: 1) acrescentar a legenda para cada uma das linhas (estou denominando cada uma delas de m1,m2,m3 e m4); 2) substituir os números (1, 2 e 3) que aparecem nas divisões em amarelo por nomes (pode ser intercepto, tratamento B e tratamento C, respectivamente). Alguém teria alguma dica? m1a<-c(94.1,91.9,92.1,92.8,92.3) m2a<-c(96.3,95.7,95.8,95.1,95.6) m3a<-c(91.6,91.0,91.1,90.0,88.6) m4a<-c(95.9,92.9,100.0,90.9,91.1) mma=c(m1a,m2a,m3a,m4a) mat1=matrix(mma,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1b<-c(14.1,11.9,16.1,12.8,9.3) m2b<-c(16.3,15.7,19.8,19.1,9.6) m3b<-c(11.6,11.0,19.1,9.0,8.6) m4b<-c(15.9,12.9,10.0,19.9,11.1) mmb=c(m1b,m2b,m3b,m4b) mat2=matrix(mmb,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4"))) m1c<-c(34.1,51.9,42.1,32.8,62.3) m2c<-c(36.3,45.7,35.8,55.1,75.6) m3c<-c(51.6,71.0,71.1,70.0,68.6) m4c<-c(45.9,42.9,40.0,30.9,51.1) mmc=c(m1c,m2c,m3c,m4c) mat3=matrix(mmc,nrow = 5, ncol = 4, byrow = FALSE,dimnames = list(c("L1","L2","L3","L4","L5"),c("m1","m2","m3","m4")))
matriz=matrix(c(mat1,mat2,mat3),5,12) a=ts(matriz,frequency = 0.5, start = c(2.5, 2)) require(lattice) xyplot(a, screens = c(1,1,1,1,2,2,2,2,3,3,3,3),xlab = "medidas de tempo",ylab = "%",col=c(1:4))
Utilizei este exemplo do help como referencia:
### Example with simpler data, few data points set.seed(1) z <- ts(cbind(a = 1:5, b = 11:15, c = 21:25) + rnorm(5)) xyplot(z, screens = list(a = "primary (a)", "other (b & c)"),type = list(a = c("p", "h"), b = c("p", "s"), "o"),pch = list(a = 2, c = 3), auto.key = list(type = "o"))
Em 31 de outubro de 2013 14:32, Maurício Lordêlo <mslordelo@gmail.com>escreveu:
Éder, obrigado pela atenção.
Não consegui. "ts.plot" constrói o gráfico com várias séries porém apenas um. Minha intenção é produzir três gráficos (como o "ts") com o mesmo eixo x e em cada um deles ter quatro linhas. Grato, Maurício
2013/10/31 Éder Comunello <comunello.eder@gmail.com>
Bom dia,
Já testou ts.plot {stats}?
### para o exemplo dado...
z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12)
plot(z)
ts.plot(z)
ts.plot(z, lty=c(1:4), col=c(1:4))
### no help tem outro exemplo... ?ts.plot
Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]
_______________________________________________ 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.
_______________________________________________ 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.
-- Manoel Galdino https://sites.google.com/site/galdinomcz/
_______________________________________________ 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.
_______________________________________________ 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.
-- Manoel Galdino https://sites.google.com/site/galdinomcz/
_______________________________________________ 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 (3)
-
Manoel Galdino
-
Maurício Lordêlo
-
Éder Comunello