始める無料で始める

カテゴリが多すぎるときの対処法

限られた描画スペースで一度にたくさんのデータを見せたいことがあります。ここでは、pollution データセットにある各都市ごとの各汚染物質について、1 年間の推移をすべて表示したいとします。各汚染物質の推移は線で描き、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()
コードを編集して実行