Visualizações gráficas em R com ggplot2

R para Usuários de SAS

Melinda Higgins, PhD

Research Professor/Senior Biostatistician Emory University

Pacote ggplot2

logo do hexsticker do ggplot2

  • ggplot2 é um pacote gráfico poderoso para R
  • O "GG" em ggplot vem de "grammar of graphics"
  • ggplot2 usa camadas para construir gráficos
  • Um ou mais objetos geométricos são adicionados à camada base
R para Usuários de SAS

Camadas - camada base

# Create plot for x=sex and y=diameter
ggplot(data = abalone, aes(sex, diameter))
  • Defina a camada base com ggplot()
  • Configure data = abalone
  • Defina aes para sex e diameter

  • Ainda sem objetos gráficos

  • Eixo x pronto para sex
  • Eixo y pronto para diameter
  • Grade traçada

ambiente gráfico do ggplot2 ainda sem boxplot

R para Usuários de SAS

Camadas - adicionar geom boxplot

# Add boxplot geometric object or geom
ggplot(data = abalone,
       aes(sex, diameter)) +
  geom_boxplot()
  • O operador + adiciona camada
  • geom_boxplot() adicionado

  • Resultado: série de boxplots

  • Diâmetros de abalone por sexo
  • F fêmeas, I jovens e M machos

boxplots do ggplot2 adicionados

R para Usuários de SAS

Camadas - adicionar um tema

# Add black white theme
ggplot(data = abalone,
       aes(sex, diameter)) +
  geom_boxplot() +
  theme_bw()
  • Adicione a camada "theme" com theme_bw()
  • Remove o fundo cinza
  • Desenha uma borda preta ao redor do gráfico

boxplot do ggplot2 com tema preto e branco

R para Usuários de SAS

Trocar geom boxplot por geom violin

# Change to geom_violin()
ggplot(data = abalone,
       aes(sex, diameter)) +
  geom_violin() +
  theme_bw()
  • geom_violin substitui geom_boxplot
  • Cria um formato parecido com um violino
  • Reflete a densidade dos dados
  • Mudança simples para gerar nova figura

gráfico violino do ggplot2

R para Usuários de SAS

Histograma de uma variável

# Make histogram of shuckedWeight
ggplot(abalone, aes(shuckedWeight)) +
  geom_histogram()
  • Crie um histograma para uma variável
  • Uma variável = uma estética
  • Adicione geom_histogram()
  • Defina aes() como shuckedWeight
  • As cores padrão precisam mudar

histograma do ggplot2 todo preto

R para Usuários de SAS

Histograma com cores

# Make lines black and fill light blue
ggplot(abalone, aes(shuckedWeight)) +
  geom_histogram(color = "black",
                 fill = "lightblue")
  • Altere parâmetros gráficos
  • Defina color das bordas das barras
  • Defina a cor de fill das barras
  • Cada opção vai dentro de ()
  • O histograma fica bem melhor

histograma do ggplot2 com barras azuis e contornos pretos

R para Usuários de SAS

Histograma: adicionar título e eixos

# Add x, y axis labels and title
ggplot(abalone, aes(shuckedWeight)) +
  geom_histogram(color = "black",
                 fill = "lightblue") +
  xlab("Shucked Weight") +
  ylab("Frequency Counts") +
  ggtitle("Shucked Weights Histogram")
  • Adicione rótulos melhores e título
  • Use xlab() e ylab() para os eixos
  • Use ggtitle() para o título
  • Esta figura está pronta para publicar!

histograma do ggplot2 com rótulos de eixos e título

R para Usuários de SAS

Criar scatterplot

# Make scatterplot with geom_point()
ggplot(abalone,
       aes(rings, shellWeight)) +
  geom_point()
  • Um scatterplot em aes precisa de duas variáveis
  • geom_point() adiciona os pontos
  • Dispersão de pesos da concha por anéis

dispersão do ggplot2 de shellweight por rings

R para Usuários de SAS

Scatterplot: adicionar linha suavizada

# Add smoothed fit line
ggplot(abalone,
       aes(rings, shellWeight)) +
  geom_point() +
  geom_smooth()
  • Ao scatterplot, adicione a linha geom_smooth()
  • Inclui área sombreada de confiança

dispersão do ggplot2 com linha suavizada

R para Usuários de SAS

Criar painéis por outra variável

# Add panels using facet_wrap()
ggplot(abalone,
       aes(rings, shellWeight)) +
  geom_point() +
  geom_smooth() +
  facet_wrap(vars(sex))
  • Adicione mais uma camada ao scatterplot
  • Crie painéis para cada sexo de abalone
  • Adicione a camada facet_wrap()
  • vars(sex) define a variável dos painéis

dispersão do ggplot2 com 3 painéis por sexo

R para Usuários de SAS

Resto do curso

  • O Capítulo 1 fecha com uma breve introdução a gráficos
    • base de habilidades gráficas com ggplot2
    • visualizar medidas de abalone por sexo
  • O Capítulo 2 ensina preparação de dados
    • limpar o conjunto de dados de abalone
  • O Capítulo 3 ensina exploração de dados
    • estatísticas descritivas, correlações e testes de comparação
  • O Capítulo 4 ensina modelagem e apresentação
    • prever idades de abalone por medidas
    • explorar modelos por sexo
R para Usuários de SAS

Vamos fazer alguns gráficos de abalones

R para Usuários de SAS

Preparing Video For Download...