Gráficos
USArrests
dados <- USArrests
dados$City <- rownames(dados)
# Ordenar de forma decrescente
dados <- dados[order(dados$Murder, decreasing = TRUE), ]
top5 <- head(dados, 5)
plot_ly(data = top5, x = ~City) %>%
add_bars(y = ~Murder, name = "Murder",
marker = list(color = "blue")) %>%
add_bars(y = ~Rape, name = "Rape",
marker = list(color = "orange")) %>%
add_bars(y = ~Assault, name = "Assault",
marker = list(color = "green")) %>%
layout(
title = list(text = "5 estados mais violentos (EUA, 1973)", x = 0.5),
barmode = "group",
xaxis = list(
title = "Estado",
categoryorder = "array",
categoryarray = top5$City,
showgrid = FALSE,
zeroline = FALSE
),
yaxis = list(
title = "Ocorrências",
range = c(0, 350),
tickvals = c(0, 100, 200, 300),
gridcolor = "white",
zerolinecolor = "gray"
),
legend = list(x = 1.02, y = 1, traceorder = "normal"),
plot_bgcolor = "white",
paper_bgcolor = "white",
font = list(family = "Arial", color = "gray"),
margin = list(t = 70, b = 70, l = 70, r = 100)
)
ClassificaçãoDoença
# 20 pacientes conforme descrito no enunciado
estagios <- c(
"moderado", "leve", "leve", "severo", "leve",
"moderado", "moderado", "moderado",
"leve", "leve", "severo", "leve", "moderado",
"moderado", "leve", "severo", "moderado",
"moderado", "moderado", "leve"
)
# Fixar a ordem das categorias
estagios <- factor(estagios, levels = c("leve", "moderado", "severo"))
# Calcular as frequências e porcentagens
frequencias <- table(estagios)
porcentagens <- 100 * frequencias / sum(frequencias)
rotulos <- paste0(
names(frequencias), " (",
formatC(as.numeric(porcentagens), format = "f", digits = 0),
"%)"
)
cores <- c("blue", "yellow", "pink")
parametros <- par(mar = c(4, 1, 3, 1))
pie(
frequencias,
labels = rotulos,
col = cores,
main = "Classificação dos estágios da doença",
border = "white",
clockwise = FALSE,
init.angle = 90
)
legend(
"bottom",
legend = names(frequencias),
fill = cores,
title = "Estágio da doença",
horiz = TRUE,
bty = "n",
inset = -0.12,
xpd = TRUE
)

Orange
dados_orange <- datasets::Orange
# Identificar cada árvore como uma categoria
dados_orange$Tree <- factor(dados_orange$Tree, levels = as.character(1:5))
# Ordenar as observações
dados_orange <- dados_orange[order(dados_orange$Tree, dados_orange$age), ]
plot_ly(
data = dados_orange,
x = ~age,
y = ~circumference,
color = ~Tree,
split = ~Tree,
colors = c("blue", "yellow", "green", "pink", "orange"),
type = "scatter",
mode = "lines+markers",
text = ~paste0(
"Árvore ", Tree,
" — idade: ", age, " dias",
" — circ.: ", circumference, " mm."
),
hovertemplate = "%{text}<extra></extra>"
) %>%
layout(
title = "Crescimento das cinco laranjeiras",
xaxis = list(title = "Idade (dias)"),
yaxis = list(title = "Circunferência (mm)"),
legend = list(title = list(text = "Árvore"))
)
VADeaths
dados_vadeaths <- t(datasets::VADeaths)
cores_vadeaths <- c("blue", "orange", "green", "purple")
grupos_vadeaths <- c(
"Homens rurais", "Mulheres rurais",
"Homens urbanos", "Mulheres urbanas"
)
barplot(
dados_vadeaths,
beside = TRUE,
col = cores_vadeaths,
border = "white",
names.arg = colnames(dados_vadeaths),
main = "Taxas de mortalidade na Virgínia (1940)",
xlab = "Faixa etária (anos)",
ylab = "Óbitos por 1.000 habitantes por ano",
ylim = c(0, max(dados_vadeaths) * 1.4),
las = 1,
legend.text = grupos_vadeaths,
args.legend = list(
x = "topleft",
ncol = 2,
bty = "n",
cex = 0.85
)
)
