ipeadata-lab / ipeaplot

ipeaplot: criando graficos no padrão editorial do Ipea
https://ipeadata-lab.github.io/ipeaplot/
Other
1 stars 0 forks source link

Gráficos gerados pelo pacote estão diferentes daqueles mostrados no cookbook #41

Closed palmaresk8 closed 3 months ago

palmaresk8 commented 4 months ago

Olá. Estou testando o pacote aqui. A primeira coisa que percebi é que rodando o código do cookbook eu obtenho alguns gráficos com labels do eixo x deslocados em relação aos traços que os delimitam (os 'rugs'). Além disso, os números não aparecem como números inteiros.

Grafico 1 Grafico 2 Grafico 5

Outra questão não relacionada à acima é se títulos, subtítulos e notas devem fazer parte do gráfico. Em publicações recentes no portal do Ipea (vide https://repositorio.ipea.gov.br/bitstream/11058/12698/4/TD_2951_web.pdf), me parece que não, que esses elementos são somente textuais e não fazem parte da "figura" do gráfico.

2024-03-07_115449

cavalcanti1985 commented 4 months ago

@PedroJorge7 Por favor, veja a questão levantada pelo Fabio. Acredito que esse problema tenha sido causado pelas modificações feitas no x_breaks.

cavalcanti1985 commented 4 months ago

@palmaresk8 muito obrigado pelo comentário. A última versão do Manual do Editorial define uma tipologia de fonte para os título, subtítulos e notas de gráficos do Ipea, então imagino que não seja considerado um elemento textual, mas sim parte da figura. De qualquer forma, a inclusão ou não de titulos é opcão do usuário.

palmaresk8 commented 4 months ago

@cavalcanti1985 , sim, eu entendo que o manual diga isso, e o estilo gráfico das publicações até então indicava que título, notas etc deviam fazer parte da "figura" do gráfico. Mas, se você perceber em publicações recentes, houve uma mudança estética que creio não está "escrita" ainda, no qual visualmente parece que esses elementos não fazem mais parte da "figura" do gráfico. Essa mudança de design é bem recente, tanto que uma ou outra publicação que estava há mais tempo no editorial ainda está saindo com o estilo antigo. Mas o link que eu coloquei é um bom exemplo (esse aqui). Enfim... só pontuando se vale a pena conferir com o editorial sobre isso. De todo modo, isso não exige uma alteração do pacote, pois se a pessoa quiser ela pode fazer o gráfico sem os títulos e notas.

cavalcanti1985 commented 4 months ago

Verdade, Fabio, estao ocorrendo algumas mudanças. Temos conversado com o Editorial, mas vou checar esse ponto com eles novamente. Obrigado.

PedroJorge7 commented 4 months ago

Fizemos alguns testes para corrigir os problemas apontados pelo Fabio e acredito que eles foram resolvidos. Se puderem depois também testar para confirmar que não há algum caso em que a nova solução não funcione.

grafico1 grafico2 grafico5

palmaresk8 commented 4 months ago

Olá @PedroJorge7 . Os gráficos 1 e 2 estão iguais. O gráfico 5 está corrigido, mas usando o código do cookbook os labels do eixo x estão aparecendo a cada dois anos. (lembrando aqui que eu não testei todos os gráficos, eu só coloquei o 1, 2, e 5 como exemplos). Usando o commit 39b6aeb. Um ponto a se notar é o aparecimento de alguns warnings. No gráfico 1 apareceu o seguinte:

Warning messages: 1: In rbind(test, temp) : number of columns of result is not a multiple of vector length (arg 2) 2: In ggplot_add.scale_auto_ipea(object, p, objectname) : Due to the existence of a bar chart, the expand_y_limit argument will be converted to FALSE 3: In ggplot_add.scale_auto_ipea(object, p, objectname) : Due to the existence of a bar chart, the x_breaks argument will be converted to the number of options available

No gráfico 5 apareceu:

Warning messages: 1: Using size aesthetic for lines was deprecated in ggplot2 3.4.0. ℹ Please use linewidth instead. This warning is displayed once every 8 hours. Call lifecycle::last_lifecycle_warnings() to see where this warning was generated. 2: In rbind(test, temp) : number of columns of result is not a multiple of vector length (arg 2)

palmaresk8 commented 4 months ago

Ok, testando aqui todos os gráficos do cookbook. Além desses warnings que aparecem, e do gráfico 5 estar com os labels x sendo mostrados a cada dois anos, o Gráfico 8 foi gerado de forma errada.

Grafico_5 Nota: esse gráfico 5 está ok, somente os labels x não estão "exatamente" como mostra no cookbook.

Grafico_8

O gráfico 8 está errado. Ao executar o código do cookbook, apareceu as seguintes mensagens:

Scale for x is already present. Adding another scale for x, which will replace the existing scale. Warning messages: 1: In rbind(test, temp) : number of columns of result is not a multiple of vector length (arg 2) 2: In ggplot_add.scale_auto_ipea(object, p, objectname) : Due to the existence of a bar chart, the expand_y_limit argument will be converted to FALSE 3: In ggplot_add.scale_auto_ipea(object, p, objectname) : Due to the existence of a bar chart, the x_breaks argument will be converted to the number of options available

palmaresk8 commented 4 months ago

Não entendi como usando o mesmo código do cookbook eu obtenho gráficos diferentes dos mostrados na página. Talvez tenha algum código para gerar os gráficos que não tenham sido "commitados"?

Outra questão, ainda sobre o gráfico 8, é que mesmo aquele mostrado na página do cookbook está aparentemente errado. Vejam que os labels dos países estão posicionados entre as barras, e não embaixo delas:

grafico8 1

cavalcanti1985 commented 4 months ago

Bom dia, @palmaresk8. Os warnings 2 e 3 são nossos, customizados, para alertar que, no caso dos gráficos de barra, o default para alguns atributos do theme é diferente.

@PedroJorge7:

lucasmation commented 4 months ago

mais uma coisa, @PedroJorge7 , ao fazer o commit voce deve fazer referencia ao numero do issue. Para evitar este tipo de duvida que o Fabio está tendo)

cavalcanti1985 commented 4 months ago

@PedroJorge7, mais dois pontos:

rafapereirabr commented 4 months ago

Muito bom ver toda essa atividade aqui, mas algumas questões levantadas aqui mereciam ser tratadas em issues separados para facilitar o tratamento de cada peoblema

cavalcanti1985 commented 4 months ago

Vou abrir um issue para cada questão, Rafa.

cavalcanti1985 commented 3 months ago

Questões foram tratadas em outros issues.