library(tidyverse)
<- read_csv("dados-diversos.csv") mg
Visualização de dados
Gráficos em ggplot
O ggplot2 é o pacote usado para visualização dos dados. O pacote ggplot2 pode ser carregado individualmente, ou pode ser carregado pelo tidyverse.Para visualizar os dados, basta usar a função ggplot.
Importação de dados
Após carregar o pacote, importa-se um banco de dados para trabalho. Para o formato csv, é necessário carregar o pacote tidyverse. As variáveis podem ser categóricas ou numéricas. As variáveis categóricas são entendidas no R como caracteres.
GGPLOT - Definindo camadas
A programação de gráficos em ggplot2 é feito na forma de camadas, que são adicionadas à medida que se confecciona o gráfico, por isso que se usa o sinal de +, porque significa a adição de mais uma camada. Usa-se o pipe (|>) para enfatizar uma sequência de comandos ou ações no chunk e para evitar adicionar o nome do data frame dentro da função ggplot.O pipe deve ter sempre um espaço antes dele e, geralmente, deve ser seguido por uma nova linha. Após a primeira etapa, cada linha deve ter dois espaços, o que torna mais fácil adicionar outras etapas ou reorganizar as já existentes.
library(ggplot2)
ggplot: A primeira função para criar um ggplot é a função ggplot, que define o conjunto de dados e elementos de estética dos gráficos. O primeiro elemento ou argumento da função é o conjunto de dados a ser utilizado (o data frame onde nossos dados foram armazenados, ex. mg). A função ggplot() define o plano com os eixos x e y. aes: Após isso, precisamos especificar como as observações serão mapeadas nos aspectos visuais do gráfico e quais formas geométricas serão utilizadas. Para isso, usamos a função aestetic (aes), uma das primeiras funções em ggplot, usada para descrever como as variáveis são mapeadas (eixos x e y). Para adionar cor usa-se a função color = nome da cor. Ao incluir esta função dentro da função aes, dizemos ao ggplot que os pontos devem ser mapeados esteticamente utilizando cores para cada variavel (ex.irrigação). A função geo_point define que a forma geométrica a ser utilizada é baseada em pontos, gerando um gráfico de dispersão. A função alpha trabalha com a tansparência.
|>
mg ggplot(aes(Irrigation, severity, color = Irrigation))+
geom_point(alpha = 0.5)
A função shape é utilizada para adicionar diferentes formas ou tipos de marcadores para diferenciar as variáveis (ex. quadrado e triângulo).
|>
mg ggplot(aes(Irrigation, severity, shape = Irrigation))+
geom_point(alpha = 0.5)
Agora, mudamos a váriavel irrigation por day. Para isso, basta subtituir a variável dentro da função aes. A função filtro, como o próprio nome remete, filtra determinadas linhas e a função geom_line transforma o gráfico em um gráfico de linhas:
# mudando para a variável day
|>
mg ggplot(aes(day, severity, shape = Irrigation))+
geom_point(alpha = 0.5)
# Deixando apenas 1 repetição - função filter e alterando para gráfico de linhas
|>
mg filter(rep == 1) |>
ggplot(aes(day, severity, shape = Irrigation))+
geom_point(alpha = 0.5)+geom_line()
A função facet_wrap adiciona facetas. Ou seja, com essa função informamos que um gráfico deve ser criado para cada ambiente, um grafico diferente para cada variável.
# Dividindo o número de repetições - função facet_wrap
|>
mg ggplot(aes(day, severity, shape = Irrigation))+
geom_point(alpha = 0.5)+
geom_line()+
facet_wrap(~rep)
Outras funções:
#Função select - seleciona colunas
|>
mg select(Irrigation, severity) |>
ggplot(aes(Irrigation, severity, shape = Irrigation))+geom_point(alpha = 0.5)
# Retirando group e geom_boxplot
|>
mg select(day, severity) |>
ggplot(aes(day, severity))+
geom_point()
# Agrupando por repetição: As primeiras 3 linhas separam a severidade por dia.
|>
mg select(day, rep, severity) |>
group_by(day) |>
summarise(sev = mean(severity)) |>
ggplot(aes(day, sev))+
geom_point()
|>
mg select(Irrigation, severity) |>
ggplot(aes(Irrigation, severity, shape = Irrigation))+geom_boxplot()+
geom_point(alpha = 0.5)
# Mudando a variável irrigação por day
|>
mg select(day, severity) |>
ggplot(aes(day, severity))+
geom_boxplot()+
geom_point(alpha = 0.5)
# Separando por grupo - função group
|>
mg select(day, severity) |>
ggplot(aes(day, severity, group = day))+
geom_boxplot()+
geom_point()
Criando um novo conjunto, fazendo a media e adicionando titulo no gráfico:
<- mg |>
mg2 select(day, rep, severity) |>
group_by(day) |>
summarise(sev = mean(severity)) |>
ggplot(aes(day, sev))+
geom_point()