Ajuda para plotar dados (usando o ggplot2)

Pessoal, Alguém domina bem a produção de gráficos usando o pacote ggplot2? Meus dados contém a frequência de dados em 13 classes diferentes ao longo de vários anos (simulação climática). Segue o link para baixar o arquivo contendo os dados: https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv (a primeira coluna pode ser ignorada). Gostaria de fazer algo parecido com esse gráfico: https://www.dropbox.com/s/8p3g42c54w3dnof/Untitled.png. Meus dados contém todas as informações para montar o gráfico: as classes (eixo x) e suas frequências (ao invés de hectares - eixo y) e os anos (três barras). Por enquanto, o código mínimo reprodutível que eu consigo enviar é apenas a abertura dos arquivos: a <- read.csv ('~/Dropbox/web/rcp26.csv') b <- read.csv ('~/Dropbox/web/rcp85.csv') Preciso de ajuda para reproduzir a imagem acima usando meus dados, com os anos 1700, 2005 e 2100 no lugar de 1985, 1993 e 2005. Agradeço desde já, Thiago.

Seu código ainda não é reproduzível. Para ser, deveria fazer importação direto do link. No caso tenho que fazer download pra minha máquina e ler. Tente prepara-lo para ser lido de maneira semelhante a essa
a <- read.csv("https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv") Erro em file(file, "rt") : não é possível abrir a conexão Além disso: Mensagens de aviso perdidas: In file(file, "rt") : esquema de URL não suportado
Eu sei que é possível fazer dowload direto porque o Fernado Toledo faz assim, veja http://r-br.2285057.n4.nabble.com/R-br-Medidas-repetidas-na-mesma-unidade-ex... A sua dúvida é simples. Se consultar a documentação da função barplot() vai saber como usar. Para um exemplo veja https://ridiculas.wordpress.com/2011/06/13/como-fazer-legendas-em-graficos/ o código para gerar o gráfico de barras verdes. À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br skype: walmeszeviani twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

Olá Walmes, Obrigado pelas dicas. A mensagem que você mostrou é de dez/11, e desde então eu acredito que o dropbox mudou algumas coisas no protocolo. Por exemplo, na época da mensagem que você mostrou o protocolo de acesso ainda não era o http seguro como é hoje. Suspeito que isso impeça a leitura direta. De qualquer forma, você chegou a dar uma olhada nos dados? Acho que o dataframe está organizado de uma maneira ligeiramente diferente do que os pacotes de gráfico esperam... Um abraço, Thiago. ________________________________ From: Walmes Zeviani <walmeszeviani@gmail.com> To: r-br@listas.c3sl.ufpr.br; Thiago Veloso <thi_veloso@yahoo.com.br> Sent: Tuesday, October 30, 2012 12:33 PM Subject: Re: [R-br] Ajuda para plotar dados (usando o ggplot2) Seu código ainda não é reproduzível. Para ser, deveria fazer importação direto do link. No caso tenho que fazer download pra minha máquina e ler. Tente prepara-lo para ser lido de maneira semelhante a essa
a <- read.csv("https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv";) Erro em file(file, "rt") : não é possível abrir a conexão Além disso: Mensagens de aviso perdidas: In file(file, "rt") : esquema de URL não suportado
Eu sei que é possível fazer dowload direto porque o Fernado Toledo faz assim, veja http://r-br.2285057.n4.nabble.com/R-br-Medidas-repetidas-na-mesma-unidade-ex... A sua dúvida é simples. Se consultar a documentação da função barplot() vai saber como usar. Para um exemplo veja https://ridiculas.wordpress.com/2011/06/13/como-fazer-legendas-em-graficos/ o código para gerar o gráfico de barras verdes. À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br skype: walmeszeviani twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

basta o OP gravar o arquivo no diretorio "Public" do dropbox e retirar o "s" de "https"... 2012/10/30 Thiago Veloso <thi_veloso@yahoo.com.br>:
Olá Walmes,
Obrigado pelas dicas. A mensagem que você mostrou é de dez/11, e desde então eu acredito que o dropbox mudou algumas coisas no protocolo. Por exemplo, na época da mensagem que você mostrou o protocolo de acesso ainda não era o http seguro como é hoje. Suspeito que isso impeça a leitura direta.
De qualquer forma, você chegou a dar uma olhada nos dados? Acho que o dataframe está organizado de uma maneira ligeiramente diferente do que os pacotes de gráfico esperam...
Um abraço, Thiago. ________________________________ From: Walmes Zeviani <walmeszeviani@gmail.com> To: r-br@listas.c3sl.ufpr.br; Thiago Veloso <thi_veloso@yahoo.com.br> Sent: Tuesday, October 30, 2012 12:33 PM Subject: Re: [R-br] Ajuda para plotar dados (usando o ggplot2)
Seu código ainda não é reproduzível. Para ser, deveria fazer importação direto do link. No caso tenho que fazer download pra minha máquina e ler. Tente prepara-lo para ser lido de maneira semelhante a essa
a <- read.csv("https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv";) Erro em file(file, "rt") : não é possível abrir a conexão Além disso: Mensagens de aviso perdidas: In file(file, "rt") : esquema de URL não suportado
Eu sei que é possível fazer dowload direto porque o Fernado Toledo faz assim, veja
http://r-br.2285057.n4.nabble.com/R-br-Medidas-repetidas-na-mesma-unidade-ex...
A sua dúvida é simples. Se consultar a documentação da função barplot() vai saber como usar. Para um exemplo veja
https://ridiculas.wordpress.com/2011/06/13/como-fazer-legendas-em-graficos/
o código para gerar o gráfico de barras verdes.
À disposição. Walmes.
========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br skype: walmeszeviani twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ========================================================================== _______________________________________________ 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.

Walmes, Depois de mais algum tempo investido no código, acredito que esteja mais fácil entender os dados. Entretanto, ainda não consegui baixar o arquivo do Dropbox direto no R, será necessário baixar primeiramente no seu pc. Aqui está o link para o arquivo: https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv. O código que estou usando vem a seguir: # Load required packages library (reshape) library (ggplot2) # Read data dump <- read.csv ('~/Dropbox/web/rcp26.csv') # trim to just data we want dump <- dump[c("value", "X1700", "X2005", "X2099")] # rename first column names(dump)[1] <- "Classes" # melt so in a form convenient for ggplot dump <- melt(dump, id.vars=1) # nice-looking year dump$Year <- substr(dump$variable,2,5) # trim again dump <- dump[c("Classes", "value", "Year")] # now, a real sample:
dump Classes value Year 1 1 2902 1700 2 2 221 1700 3 3 546 1700 4 4 47 1700 5 6 258 1700 6 7 7 1700 7 9 152 1700 8 10 1512 1700 9 11 252 1700 10 12 179 1700 11 13 78 1700 12 14 193 1700 13 15 33 1700 14 1 2906 2005 15 2 217 2005 16 3 548 2005 17 4 46 2005 18 6 257 2005 19 7 7 2005 20 9 149 2005 21 10 1514 2005 22 11 249 2005 23 12 181 2005 24 13 79 2005 25 14 195 2005 26 15 32 2005 27 1 2906 2099 28 2 217 2099 29 3 548 2099 30 4 48 2099 31 6 256 2099 32 7 9 2099 33 9 137 2099 34 10 1523 2099 35 11 244 2099 36 12 189 2099 37 13 76 2099 38 14 192 2099 39 15 35 2099
Agora acredito que tenha ficado mais fácil entender o conjunto de dados: em cada ano (1700, 2005 e 2099) existe uma distribuição (value) diferente de dados em 13 classes (coluna Classes, que vai de 1 a 15 mas sem a presença de 5 e 8). De posse desses dados, gostaria de fazer um gráfico como esse: https://www.dropbox.com/s/8p3g42c54w3dnof/Untitled.png Agradeço desde já qualquer ajuda, Thiago. ________________________________ From: Walmes Zeviani <walmeszeviani@gmail.com> To: r-br@listas.c3sl.ufpr.br; Thiago Veloso <thi_veloso@yahoo.com.br> Sent: Tuesday, October 30, 2012 12:33 PM Subject: Re: [R-br] Ajuda para plotar dados (usando o ggplot2) Seu código ainda não é reproduzível. Para ser, deveria fazer importação direto do link. No caso tenho que fazer download pra minha máquina e ler. Tente prepara-lo para ser lido de maneira semelhante a essa
a <- read.csv("https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv";) Erro em file(file, "rt") : não é possível abrir a conexão Além disso: Mensagens de aviso perdidas: In file(file, "rt") : esquema de URL não suportado
Eu sei que é possível fazer dowload direto porque o Fernado Toledo faz assim, veja http://r-br.2285057.n4.nabble.com/R-br-Medidas-repetidas-na-mesma-unidade-ex... A sua dúvida é simples. Se consultar a documentação da função barplot() vai saber como usar. Para um exemplo veja https://ridiculas.wordpress.com/2011/06/13/como-fazer-legendas-em-graficos/ o código para gerar o gráfico de barras verdes. À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br skype: walmeszeviani twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

Ok, depois da dica do Benilton, o diretório público permite download direto dos arquivos. Segue abaixo o código atualizado com essa facilidade: # Load required packages library (reshape) library (ggplot2) # Read data dump <- read.csv ('http://dl.dropbox.com/u/27700634/rcp26.csv') # trim to just data we want dump <- dump[c("value", "X1700", "X2005", "X2099")] # rename first column names(dump)[1] <- "Classes" # melt so in a form convenient for ggplot dump <- melt(dump, id.vars=1) # nice-looking year dump$Year <- substr(dump$variable,2,5) # trim again dump <- dump[c("Classes", "value", "Year")] ----- Original Message ----- From: Thiago Veloso <thi_veloso@yahoo.com.br> To: Walmes Zeviani <walmeszeviani@gmail.com>; "r-br@listas.c3sl.ufpr.br" <r-br@listas.c3sl.ufpr.br> Cc: Sent: Tuesday, October 30, 2012 9:32 PM Subject: Re: [R-br] Ajuda para plotar dados (usando o ggplot2) Walmes, Depois de mais algum tempo investido no código, acredito que esteja mais fácil entender os dados. Entretanto, ainda não consegui baixar o arquivo do Dropbox direto no R, será necessário baixar primeiramente no seu pc. Aqui está o link para o arquivo: https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv. O código que estou usando vem a seguir: # Load required packages library (reshape) library (ggplot2) # Read data dump <- read.csv ('~/Dropbox/web/rcp26.csv') # trim to just data we want dump <- dump[c("value", "X1700", "X2005", "X2099")] # rename first column names(dump)[1] <- "Classes" # melt so in a form convenient for ggplot dump <- melt(dump, id.vars=1) # nice-looking year dump$Year <- substr(dump$variable,2,5) # trim again dump <- dump[c("Classes", "value", "Year")] # now, a real sample:
dump Classes value Year 1 1 2902 1700 2 2 221 1700 3 3 546 1700 4 4 47 1700 5 6 258 1700 6 7 7 1700 7 9 152 1700 8 10 1512 1700 9 11 252 1700 10 12 179 1700 11 13 78 1700 12 14 193 1700 13 15 33 1700 14 1 2906 2005 15 2 217 2005 16 3 548 2005 17 4 46 2005 18 6 257 2005 19 7 7 2005 20 9 149 2005 21 10 1514 2005 22 11 249 2005 23 12 181 2005 24 13 79 2005 25 14 195 2005 26 15 32 2005 27 1 2906 2099 28 2 217 2099 29 3 548 2099 30 4 48 2099 31 6 256 2099 32 7 9 2099 33 9 137 2099 34 10 1523 2099 35 11 244 2099 36 12 189 2099 37 13 76 2099 38 14 192 2099 39 15 35 2099
Agora acredito que tenha ficado mais fácil entender o conjunto de dados: em cada ano (1700, 2005 e 2099) existe uma distribuição (value) diferente de dados em 13 classes (coluna Classes, que vai de 1 a 15 mas sem a presença de 5 e 8). De posse desses dados, gostaria de fazer um gráfico como esse: https://www.dropbox.com/s/8p3g42c54w3dnof/Untitled.png Agradeço desde já qualquer ajuda, Thiago. ________________________________ From: Walmes Zeviani <walmeszeviani@gmail.com> To: r-br@listas.c3sl.ufpr.br; Thiago Veloso <thi_veloso@yahoo.com.br> Sent: Tuesday, October 30, 2012 12:33 PM Subject: Re: [R-br] Ajuda para plotar dados (usando o ggplot2) Seu código ainda não é reproduzível. Para ser, deveria fazer importação direto do link. No caso tenho que fazer download pra minha máquina e ler. Tente prepara-lo para ser lido de maneira semelhante a essa
a <- read.csv("https://www.dropbox.com/s/50loxmtd2z2eqco/rcp26.csv";) Erro em file(file, "rt") : não é possível abrir a conexão Além disso: Mensagens de aviso perdidas: In file(file, "rt") : esquema de URL não suportado
Eu sei que é possível fazer dowload direto porque o Fernado Toledo faz assim, veja http://r-br.2285057.n4.nabble.com/R-br-Medidas-repetidas-na-mesma-unidade-ex... A sua dúvida é simples. Se consultar a documentação da função barplot() vai saber como usar. Para um exemplo veja https://ridiculas.wordpress.com/2011/06/13/como-fazer-legendas-em-graficos/ o código para gerar o gráfico de barras verdes. À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br skype: walmeszeviani twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================
participantes (3)
-
Benilton Carvalho
-
Thiago Veloso
-
Walmes Zeviani