ПочатиПочніть безкоштовно

Як впоратися з надто багатьма категоріями

Іноді місця на фігурі бракує, а даних потрібно показати багато й одразу. Тут ви хочете відобразити річну траєкторію кожної забруднювальної речовини для кожного міста в наборі даних pollution. Кожну траєкторію буде зображено у вигляді лінії, де значення по осі y відповідає кількості стандартних відхилень від середнього за рік. Отже, на графіку одночасно буде дуже багато ліній — значно більше, ніж можна чітко розрізнити за кольором.

Щоб упоратися з цим, ви вирішили виділити невелику підмножину комбінацій міст і забруднювальних речовин (wanted_combos). Ця підмножина для вас найважливіша, а інші траєкторії дадуть корисний контекст для порівняння. Щоб сфокусувати увагу, ви встановите для всіх не виділених траєкторій однаковий колір «other».

Ця вправа є частиною курсу

Удосконалення візуалізацій даних у Python

Переглянути курс

Інструкції до вправи

  • Змініть генератор списку, щоб відібрати потрібні комбінації міста й забруднювальної речовини (wanted_combos).
  • Вкажіть для лінійного графіка зафарбовувати лінії за новоствореним стовпцем color_cats у вашому датафреймі.
  • Використайте аргумент units, щоб визначити, як, тобто з якого стовпця, слід з'єднувати точки даних для формування кожної лінії.
  • Вимкніть бінінг точок за допомогою аргументу estimator.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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()
Редагувати та запускати код