Questões

VADeaths

cores <- c(
  "steelblue",
  "tomato",
  "gold",
  "forestgreen",
  "purple"
)

barplot(
  VADeaths,
  beside = TRUE,
  col = cores,
  main = "Taxas de Mortalidade - VADeaths",
  xlab = "Faixas Etárias",
  ylab = "Taxa de Mortalidade"
)

legend(
  "topright",
  legend = rownames(VADeaths),
  fill = cores,
  title = "Categorias"
)

Comentário

O parâmetro beside = TRUE faz com que as barras fiquem agrupadas (lado a lado). Cada categoria recebe uma cor diferente e a legenda identifica cada grupo.


ClassificaçãoDoença

dados <- c(
  "moderado","leve","leve","severo","leve",
  "moderado","moderado","moderado","leve","leve",
  "severo","leve","moderado","moderado","leve",
  "severo","moderado","moderado","moderado","leve"
)

freq <- table(dados)

porcentagem <- round(
  100 * freq / sum(freq),
  1
)

rotulos <- paste0(
  names(freq),
  " (",
  porcentagem,
  "%)"
)

cores <- c(
  "lightgreen",
  "gold",
  "tomato"
)

pie(
  freq,
  labels = rotulos,
  col = cores,
  main = "Classificação da Doença"
)

legend(
  "topright",
  legend = names(freq),
  fill = cores,
  title = "Estágio"
)

Comentário

O gráfico de pizza mostra a proporção de pacientes em cada estágio da doença. As porcentagens foram calculadas automaticamente e exibidas nas fatias.


USArrests

library(plotly)

dados <- USArrests

dados$City <- rownames(dados)

top5 <- dados[order(-dados$Murder), ]

top5 <- head(top5, 5)

plot_ly(
  data = top5,
  x = ~City
) %>%
  add_bars(
    y = ~Murder,
    name = "Murder"
  ) %>%
  add_bars(
    y = ~Rape,
    name = "Rape"
  ) %>%
  add_bars(
    y = ~Assault,
    name = "Assault"
  ) %>%
  layout(
    barmode = "group",
    title = "5 estados mais violentos (EUA, 1973)",
    xaxis = list(title = "Estado"),
    yaxis = list(title = "Ocorrências")
  )

Comentário

Os estados foram ordenados pela variável Murder em ordem decrescente. Em seguida foram selecionados os cinco mais violentos e construído o gráfico de barras agrupadas utilizando Plotly.


Orange

library(plotly)

p <- plot_ly()

arvores <- levels(Orange$Tree)

for(i in seq_along(arvores)) {

  dados <- subset(
    Orange,
    Tree == arvores[i]
  )

  texto <- paste0(
    "Árvore ", dados$Tree,
    " — idade: ", dados$age,
    " dias — circ.: ", dados$circumference,
    " mm"
  )

  p <- p %>%
    add_lines(
      data = dados,
      x = ~age,
      y = ~circumference,
      name = paste("Árvore", arvores[i]),
      text = texto,
      hoverinfo = "text"
    )
}

p %>%
  layout(
    title = "Crescimento das Laranjeiras",
    xaxis = list(title = "Idade (dias)"),
    yaxis = list(title = "Circunferência (mm)")
  )

Comentário

Cada linha representa uma laranjeira diferente. Ao passar o mouse sobre os pontos, é exibida a idade da árvore e sua circunferência, conforme solicitado.