Barplot com dois eixos

Prezados, bom dia!!! Estou fazendo um barplot, cujos dados estão estruturados no R em forma de matriz como no exemplo abaixo: dados=data.frame(y1=c(110,120,115,130,125),y2=c(102,105,104,103,107)) dadosest=as.matrix(dados) barplot(dadosest,ylim=c(0,150),beside=TRUE) Eu gostaria de criar um novo eixo (à direita), com os valores correspondentes a y1 e y2 plotados como "bolinhas", e se possível com uma reta unindo essas "bolinhas"... Alguém teria sugestão de como se fazer isso? Eu empreguei a função par(new=T), mas no meu teste, o novo gráfico ficou muito desproporcional. Se alguém souber e puder ajudar... agradecido desde já!!! Diogo JerônimoBacharel em Ciências Estatísticas - ENCE/IBGEMestre em Metrologia - PUC-Rio/PósMQICONRE: 8514 - SÉRIE ACel:(21)99680-8535Email: diogojose21@yahoo.com.brhttp://lattes.cnpq.br/8996149312896520

Poderia colocar os valores acima das barras: b <- barplot(dadosest,ylim=c(0,150),beside=TRUE) text(as.vector(b), as.vector(dadosest)+10, format(dadosest)) Elias On 31/08/2017 11:13, Diogo Jerônimo via R-br wrote:
Prezados, bom dia!!!
Estou fazendo um barplot, cujos dados estão estruturados no R em forma de matriz como no exemplo abaixo:
dados=data.frame( y1=c(110,120,115,130,125), y2=c(102,105,104,103,107))
dadosest=as.matrix(dados)
barplot(dadosest,ylim=c(0,150),beside=TRUE)
Eu gostaria de criar um novo eixo (à direita), com os valores correspondentes a y1 e y2 plotados como "bolinhas", e se possível com uma reta unindo essas "bolinhas"...
Alguém teria sugestão de como se fazer isso? Eu empreguei a função par(new=T), mas no meu teste, o novo gráfico ficou muito desproporcional.
Se alguém souber e puder ajudar... agradecido desde já!!! /Diogo Jerônimo/ /Bacharel em Ciências Estatísticas - ENCE/IBGE/ /Mestre em Metrologia - PUC-Rio/PósMQI/ /CONRE: 8514 - SÉRIE A/ /Cel:(21)99680-8535/ /Email: diogojose21@yahoo.com.br/ /http://lattes.cnpq.br/8996149312896520/
_______________________________________________ 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.

Oi César e Elias, obrigado a ambos pela atenciosidade, e peço desculpas, acho de fato que não fui claro. Irei fazer o barplot mais corriqueiro como mostrei na rotina: dados=data.frame(y1=c(110,120,115,130,125),y2=c(102,105,104,103,107)) dadosest=as.matrix(dados) barplot(dadosest,ylim=c(0,150),beside=TRUE) Só que os gráficos de "bolinhas" não serão os mesmos valores, será outro conjunto numa outra escala. Exemplo, padronizando os valores acima, teríamos os seguintes dados: dadosp=data.frame(y1p=c(-1.26,0.00,-0.63,1.26,0.63),y2p=c(-1.14,0.41,-0.10,-0.62,1.45)) dadosestp=as.matrix(dadosp) Esses dados em azul (que são padronizados pelos valores em vermelho) é que serão plotados em "bolinhas". Para esses, a escala será outra, e representada no eixo a direita. O da esquerda conterá a escala dos dados em "barras". Desculpa, consegui ser claro? Obrigado novamente!!! Diogo JerônimoBacharel em Ciências Estatísticas - ENCE/IBGEMestre em Metrologia - PUC-Rio/PósMQICONRE: 8514 - SÉRIE ACel:(21)99680-8535Email: diogojose21@yahoo.com.brhttp://lattes.cnpq.br/8996149312896520 De: Elias T. Krainski via R-br <r-br@listas.c3sl.ufpr.br> Para: r-br@listas.c3sl.ufpr.br Enviadas: Quinta-feira, 31 de Agosto de 2017 11:19 Assunto: Re: [R-br] Barplot com dois eixos Poderia colocar os valores acima das barras: b <- barplot(dadosest,ylim=c(0,150),beside=TRUE) text(as.vector(b), as.vector(dadosest)+10, format(dadosest)) Elias On 31/08/2017 11:13, Diogo Jerônimo via R-br wrote: Prezados, bom dia!!! Estou fazendo um barplot, cujos dados estão estruturados no R em forma de matriz como no exemplo abaixo: dados=data.frame( y1=c(110,120,115,130,125), y2=c(102,105,104,103,107)) dadosest=as.matrix(dados) barplot(dadosest,ylim=c(0,150),beside=TRUE) Eu gostaria de criar um novo eixo (à direita), com os valores correspondentes a y1 e y2 plotados como "bolinhas", e se possível com uma reta unindo essas "bolinhas"... Alguém teria sugestão de como se fazer isso? Eu empreguei a função par(new=T), mas no meu teste, o novo gráfico ficou muito desproporcional. Se alguém souber e puder ajudar... agradecido desde já!!! Diogo Jerônimo Bacharel em Ciências Estatísticas - ENCE/IBGE Mestre em Metrologia - PUC-Rio/PósMQI CONRE: 8514 - SÉRIE A Cel:(21)99680-8535 Email: diogojose21@yahoo.com.br http://lattes.cnpq.br/8996149312896520 _______________________________________________ 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.

Olá Diogo. De fato vendo a sua explicação fica menos claro o efeito que você deseja. Para não ficar um interminável vai e vem de trechos de código e avaliações que vão começar a parecer o jogo do "tá quente, tá frio!", acho que poderíamos fazer o seguinte: Qual o gráfico que você quer gerar com os dados *dadosestp* (Código ou figura)? Esse gráfico seria colocado ao "lado" como no meu exemplo ou *sobreposto* ao gráfico de barras com o terceiro eixo que você propõe? Se ainda for difícil de explicar, talvez fazer um *mockup* com um editor gráfico, por mais primitivo que seja, como o Paint, por exemplo ou um scan de um esboço feito à mão, possa ser a forma mais expressa e rápida de você mostrar o que gostaria de fazer. HTH 2017-09-01 8:32 GMT-03:00 Diogo Jerônimo via R-br <r-br@listas.c3sl.ufpr.br> :
Oi César e Elias, obrigado a ambos pela atenciosidade, e peço desculpas, acho de fato que não fui claro.
Irei fazer o barplot mais corriqueiro como mostrei na rotina:
*dados=data.frame(* *y1=c(110,120,115,130,125),* *y2=c(102,105,104,103,107))*
*dadosest=as.matrix(dados)*
*barplot(dadosest,ylim=c(0,150),beside=TRUE)*
Só que os gráficos de "bolinhas" não serão os mesmos valores, será outro conjunto numa outra escala. Exemplo, padronizando os valores acima, teríamos os seguintes dados:
*dadosp=data.frame(* *y1p=c(-1.26,0.00,-0.63,1.26,0.63),* *y2p=c(-1.14,0.41,-0.10,-0.62,1.45))*
*dadosestp=as.matrix(dadosp)*
Esses dados em azul (que são padronizados pelos valores em vermelho) é que serão plotados em "bolinhas". Para esses, a escala será outra, e representada no eixo a direita. O da esquerda conterá a escala dos dados em "barras".
Desculpa, consegui ser claro?
Obrigado novamente!!!
*Diogo Jerônimo* *Bacharel em Ciências Estatísticas - ENCE/IBGE* *Mestre em Metrologia - PUC-Rio/PósMQI* *CONRE: 8514 - SÉRIE A* *Cel:(21)99680-8535* *Email: diogojose21@yahoo.com.br <diogojose21@yahoo.com.br>* *http://lattes.cnpq.br/8996149312896520 <http://lattes.cnpq.br/8996149312896520>*
------------------------------ *De:* Elias T. Krainski via R-br <r-br@listas.c3sl.ufpr.br> *Para:* r-br@listas.c3sl.ufpr.br *Enviadas:* Quinta-feira, 31 de Agosto de 2017 11:19 *Assunto:* Re: [R-br] Barplot com dois eixos
Poderia colocar os valores acima das barras: b <- barplot(dadosest,ylim=c(0,150),beside=TRUE) text(as.vector(b), as.vector(dadosest)+10, format(dadosest))
Elias
On 31/08/2017 11:13, Diogo Jerônimo via R-br wrote:
Prezados, bom dia!!!
Estou fazendo um barplot, cujos dados estão estruturados no R em forma de matriz como no exemplo abaixo:
dados=data.frame( y1=c(110,120,115,130,125), y2=c(102,105,104,103,107))
dadosest=as.matrix(dados)
barplot(dadosest,ylim=c(0,150),beside=TRUE)
Eu gostaria de criar um novo eixo (à direita), com os valores correspondentes a y1 e y2 plotados como "bolinhas", e se possível com uma reta unindo essas "bolinhas"...
Alguém teria sugestão de como se fazer isso? Eu empreguei a função par(new=T), mas no meu teste, o novo gráfico ficou muito desproporcional.
Se alguém souber e puder ajudar... agradecido desde já!!!
*Diogo Jerônimo* *Bacharel em Ciências Estatísticas - ENCE/IBGE* *Mestre em Metrologia - PUC-Rio/PósMQI* *CONRE: 8514 - SÉRIE A* *Cel:(21)99680-8535* *Email: diogojose21@yahoo.com.br <diogojose21@yahoo.com.br>* *http://lattes.cnpq.br/8996149312896520 <http://lattes.cnpq.br/8996149312896520>*
_______________________________________________ R-br mailing listR-br@listas.c3sl.ufpr.brhttps://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.
_______________________________________________ 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.

Usando seu exemplo:
barras <- barplot(dadosest,ylim=c(0,150),beside=TRUE) points(barras[,1],dados$y1) points(barras[,2],dados$y2, pch=19) lines(barras[,1],dados$y1) lines(barras[,2],dados$y2, lty=2)
HTH -- Cesar Rabak PS.: Se você quer ver as "bolinhas e as linhas" em outro gráfico do lado direito, a resposta seria outra. . .
par(mfrow=c(1,2)) barplot(dadosest,ylim=c(0,150),beside=TRUE) barplot(dadosest,ylim=c(0,150),beside=TRUE,col=0,border=NA) points(barras[,1],dados$y1) lines(barras[,1],dados$y1) points(barras[,2],dados$y2,pch=19) lines(barras[,2],dados$y2,lty=2)
2017-08-31 11:13 GMT-03:00 Diogo Jerônimo via R-br <r-br@listas.c3sl.ufpr.br
:
Prezados, bom dia!!!
Estou fazendo um barplot, cujos dados estão estruturados no R em forma de matriz como no exemplo abaixo:
dados=data.frame( y1=c(110,120,115,130,125), y2=c(102,105,104,103,107))
dadosest=as.matrix(dados)
barplot(dadosest,ylim=c(0,150),beside=TRUE)
Eu gostaria de criar um novo eixo (à direita), com os valores correspondentes a y1 e y2 plotados como "bolinhas", e se possível com uma reta unindo essas "bolinhas"...
Alguém teria sugestão de como se fazer isso? Eu empreguei a função par(new=T), mas no meu teste, o novo gráfico ficou muito desproporcional.
Se alguém souber e puder ajudar... agradecido desde já!!!
*Diogo Jerônimo* *Bacharel em Ciências Estatísticas - ENCE/IBGE* *Mestre em Metrologia - PUC-Rio/PósMQI* *CONRE: 8514 - SÉRIE A* *Cel:(21)99680-8535* *Email: diogojose21@yahoo.com.br <diogojose21@yahoo.com.br>* *http://lattes.cnpq.br/8996149312896520 <http://lattes.cnpq.br/8996149312896520>*
_______________________________________________ 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)
-
Cesar Rabak
-
Diogo Jerônimo
-
Elias T. Krainski