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.
________________________