プロットをリミックスする
ファーマーズマーケットの緯度と、マーケットが開いている月数の関係はとても興味深いですね。直感的には、南に行くほど生育期が長くなり、マーケットも長期間開けると考えられます。これを可視化するために、州レベルでデータを集計し、マーケットが開いている期間に対応する列を持つヒートマップを描きます。ヒートマップの各行は各州のマーケットの「季節」の分布を示し、行は州の緯度の降順で並べ替えます。

デフォルトのヒートマップは改善の余地が多くあります。フォントサイズを小さくして、州名が重ならずに収まるようにしましょう。濃い配色は淡い背景と相性が悪く、カラーバーも相対比較がポイントである今回には有益ではありません。
この演習はコースの一部です
Pythonでデータ可視化を磨く
演習の手順
- 州名が詰まりすぎないよう、フォントサイズをデフォルトの85%に下げます。
'white'から'steelblue'に変化する新しいカラーパレットを作成します。- 既定のパレットを作成した新しいものに置き換えます。
- ヒートマップの横に描かれる連続カラーバーの凡例を削除します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Decrease font size so state names are less crowded
sns.set(____ = ____)
# Switch to an appropriate color palette
blue_pal = sns.light_palette("____", as_cmap = True)
# Order states by latitude
g = sns.heatmap(markets_by_month.reindex(state_by_lat),
# Add gaps between cells
linewidths = 0.1,
# Set new palette and remove color bar
cmap = ____, cbar = ____,
yticklabels = True)
# Rotate y-axis ticks
g.set_yticklabels(g.get_yticklabels(), rotation = 0)
plt.title('Distribution of months open for farmers markets by latitude')
plt.show()