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

O que é e como funcionam Sistemas Multi-Agentes

Sistemas multi-agentes (MAS) representam uma nova forma de estruturar aplicações de inteligência artificial, especialmente úteis para lidar com problemas complexos e distribuídos. Em vez de depender de um único agente generalista, esses sistemas são compostos por múltiplos agentes especializados que colaboram, competem ou se coordenam para executar tarefas específicas. Neste post, explicamos o que são os MAS, seus principais componentes (como LLMs, ferramentas e processos) e as arquiteturas mais comuns.

O que é um Vector Database e como criar um com LangChain

Nesta postagem, mostramos como construir um pipeline simples de RAG (Retrieval-Augmented Generation) usando o LangChain, o modelo Gemini 2.0 Flash e o Vector Database Chroma. Utilizamos como exemplo o Relatório de Inflação de junho de 2025 do Banco Central do Brasil. O fluxo envolve o download e leitura do PDF, divisão do texto com RecursiveCharacterTextSplitter, geração de embeddings com Gemini, armazenamento vetorial com Chroma e busca semântica para responder perguntas com base no conteúdo do relatório. É uma aplicação prática e didática para economistas que desejam integrar IA ao seu fluxo de análise.

Automatizando a Construção de Códigos em Python com LangGraph

Neste post, mostramos como construir um agente de código em Python utilizando LangGraph, LangChain e Gemini. A proposta é construir um protótipo para automatizar o ciclo completo de geração, execução e correção de código com o uso de LLMs, organizando o processo em um grafo de estados.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

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.