ÎncepețiÎncepe gratuit

Gestionarea unui număr prea mare de categorii

Uneori spațiul disponibil în grafic este limitat și trebuie să afișezi o cantitate mare de date deodată. Aici vrei să reprezinți traiectoria anuală a fiecărui poluant pentru fiecare oraș din setul de date pollution. Fiecare traiectorie va fi redată ca o linie, valoarea y corespunzând abaterilor standard față de media anuală. Asta înseamnă că vei avea foarte multe linii în grafic simultan – mult prea multe pentru a le diferenția clar prin culoare.

Pentru a rezolva această problemă, ai decis să evidențiezi un subset mic de combinații oraș-poluant (wanted_combos). Acest subset este cel mai important pentru tine, iar celelalte traiectorii vor oferi un context valoros pentru comparație. Pentru a concentra atenția, vei seta toate liniile de traiectorie care nu sunt evidențiate la aceeași culoare „altele".

Acest exercițiu face parte din cursul

Îmbunătățirea vizualizărilor de date în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Modifică list comprehension-ul pentru a izola combinațiile dorite de oraș și poluant (wanted_combos).
  • Spune graficului cu linii să coloreze liniile după coloana color_cats nou creată în DataFrame-ul tău.
  • Folosește argumentul units pentru a stabili cum, adică din ce coloană, trebuie conectate punctele de date pentru a forma fiecare linie.
  • Dezactivează gruparea punctelor în intervale cu argumentul estimator.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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()
Editează și rulează codul