Lidando com categorias demais
Às vezes você pode ter pouco espaço na figura e precisar mostrar muitos dados de uma vez. Aqui você quer mostrar a trajetória ao longo do ano de cada poluente para cada cidade no conjunto de dados pollution. Cada trajetória de poluente será plotada como uma linha, com o valor em y correspondendo aos desvios-padrão em relação à média do ano. Isso significa que haverá muitas linhas no seu gráfico ao mesmo tempo — bem mais do que você conseguiria diferenciar claramente usando apenas cor.
Para lidar com isso, você decidiu destacar um pequeno subconjunto de combinações cidade–poluente (wanted_combos). Esse subconjunto é o mais importante para você, e as outras trajetórias fornecerão um contexto valioso para comparação. Para direcionar a atenção, você vai definir todas as linhas não destacadas com a mesma cor "other".
Este exercicio faz parte do curso
Aprimorando suas visualizações de dados em Python
Instruções do exercicio
- Modifique a list comprehension para isolar as combinações desejadas de cidade e poluente (
wanted_combos). - Indique ao line plot para colorir as linhas pela nova coluna
color_catsno seu DataFrame. - Use o argumento
unitspara determinar como, isto é, a partir de qual coluna, os pontos devem ser conectados para formar cada linha. - Desative o binning dos pontos com o argumento
estimator.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# Choose the combos that get distinct colors
wanted_combos = ['Vandenberg Air Force Base NO2', 'Long Beach CO', 'Cincinnati SO2']
# Assign a new column to DataFrame for isolating the desired combos
city_pol_month['color_cats'] = [x if x in ____ else 'other' for x in city_pol_month['city_pol']]
# Plot lines with color driven by new column and lines driven by original categories
sns.lineplot(x = "month",
y = "value",
hue = '____',
units = '____',
estimator = ____,
palette = 'Set2',
data = city_pol_month)
plt.show()