0
respostas

[Projeto] 07 Faça como eu fiz: analisando distribuição com boxplot

Para incluir o terceiro filme ("Grumpier Old Men", ID 3), precisamos expandir nossa query e configurar as bibliotecas.

1. Utilizando Matplotlib O Matplotlib exige que passemos uma lista de arrays/series.

import matplotlib.pyplot as plt

Extraindo as notas do terceiro filme

notas_do_grumpier = notas.query("filmeId==3")["nota"]

Criando o boxplot com Matplotlib

O parâmetro 'patch_artist=True' permite preencher com cor

plt.figure(figsize=(8, 6))
plt.boxplot([notas_do_toy_story, notas_do_jumanji, notas_do_grumpier],
labels=["Toy Story", "Jumanji", "Grumpier Old Men"],
patch_artist=True)

plt.title("Distribuição de Notas (Matplotlib)")
plt.ylabel("Nota")
plt.show()

2. Utilizando Seaborn O Seaborn é mais elegante porque trabalha diretamente com a filtragem do DataFrame

import seaborn as sns

Configurando o tamanho

plt.figure(figsize=(10, 6))

Filtrando os 3 filmes de uma vez usando 'in'

sns.boxplot(data=notas.query("filmeId in [1, 2, 3]"),
x="filmeId",
y="nota",
palette="Set2") # Adicionando cores com uma paleta pronta

Melhorando os rótulos

plt.title("Comparação de Notas: Toy Story vs Jumanji vs Grumpier Old Men")
plt.xticks(ticks=[0, 1, 2], labels=["Toy Story", "Jumanji", "Grumpier Old Men"])

plt.show()