Hackeando o R: agrupando gráficos no R

Uma das etapas mais importante da análise de dados é a apresentação visual. Sabe-se que tanto para quem necessita tirar conclusões a partir dos dados, e também para ouvintes de outros segmentos, a parte visual demonstra-se como essencial para o entendimento do tópico que está sendo discutido. No Hackeando o R de hoje, iremos mostrar como podemos encaixar gráficos de forma que se tenha uma apresentação amigável, simples e rápida, combinando gráficos em apenas uma única figura.

O pacote mais importante no R para a visualização de dados, como todos sabem, é o pacote {ggplot2}. Apesar de suas inumeráveis funcionalidades, alguns pacotes o ajudam a potencializar seu uso. Como mostraremos, os pacotes {patchwork} e o {gridExtra} o ajudam na tarefa especifica de combinar múltiplos gráficos.

library(gridExtra)
library(patchwork)
library(tidyverse)

Para começarmos com os exemplos, primeiro devemos atribuir a um objeto um gráfico feito a partir do {ggplot2}. Utilizaremos o dataset Economics como exemplo, criando três gráficos diferentes.

# Gráfico de linha

psav_line <- economics %>% 
  ggplot(aes(x = date, y = psavert))+
  geom_line()+
  theme_minimal()+
  labs(x = "",
       y = "",
       title = "Personal savings rate - USA")

# Histograma

psav_des <- economics %>% 
  ggplot(aes(psavert))+
  geom_density(binwidth = .1, 
                 fill = "darkblue",
                 colour = "black")+
  theme_minimal()+
  labs(x = "",
       y = "",
       title = "Personal savings rate - USA")

# Gráfico de linha

pce_line <- economics %>% 
  ggplot(aes(x = date, y = pce))+
  geom_line()+
  theme_minimal()+
  labs(x = "",
       y = "",
       title = "Personal consumption expenditures",
       subtitle = "in billions of dollars - USA")

Salvado nossos gráficos, podemos utilizar o pacote {patchwork}, no qual funciona utilizando operadores matemáticos. O "+" é utilizado para deixar os gráficos lado a lado, como uma coluna. O uso de "()" serve para agrupar os gráficos e o "/" para empilhar um em outro.

pce_line + (psav_line / psav_des)+
  plot_annotation(
    title = "Economics Dataset")

Veja como podemos mudar a orientação dos gráficos mudando os operadores:

pce_line + psav_line + psav_des +
  plot_annotation(
    title = "Economics Dataset")

Outro pacote que pode ajudar na combinação de gráficos é o {gridExtra}, que diferentemente do {patchwork}, utiliza-se a função grid.arrange para ordernar os gráficos.

Veja que por padrão, a função empilha os gráficos, como se fosse em formato de linhas.


grid.arrange(psav_line, psav_des)

Também pode se especificar para que sejam ordenados em formato de colunas, podendo também escolher quantas queira.


grid.arrange(pce_line, psav_line, psav_des, ncol= 3)

(*) Quer aprender mais sobre a linguagem R e como construir gráficos? confira nosso Curso de Introdução ao R para análise de dados.

________________________

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Análise do Censo Demográfico com o R

Como podemos analisar dados do Censo Demográfico para produzir pesquisas e implementar políticas públicas? Mostramos nesta postagem o resultado de uma breve análise dos dados preliminares do Censo Demográfico de 2022 usando o R.

Deploy de modelos com Python + Shinylive + GitHub gastando ZERO reais

Colocar modelos em produção pode ser um grande desafio. Lidar com custos monetários, infraestrutura operacional e complexidades de códigos e ferramentas pode acabar matando potenciais projetos. Uma solução que elimina todos estes obstáculos é a recém lançada Shinylive. Neste artigo mostramos um exemplo com um modelo de previsão para o preço do petróleo Brent.

Como automatizar tarefas repetitivas usando Python? Um exemplo para largar o Excel

Manter relatórios diários com dados e análises atualizados é um desafio, pois envolve várias etapas: coleta de dados, tratamento de informações, produção de análises e atualização de relatório. Para superar este desafio algumas ferramentas como Python + Quarto + GitHub podem ser usadas para automatizar tudo que for automatizável. Neste artigo mostramos um exemplo com dados do mercado financeiro.

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.