1つの図に複数のプロットを重ねる
シアトル市は、南北に走るフリーモント橋の東側と西側の両方に自転車通行量を記録するメーターを設置しています。
この演習では、for ループと matplotlib を使って、橋の東側と西側の交通量が日中どのように変化するかを調べます。朝夕の通勤時間帯にそれぞれの側がどのように使われているかを理解することは、この主要ルートに接続する将来の自転車インフラの整備にとって重要です。
for ループで現在の位置を追跡したいときに便利な Python の関数に enumerate() があります。
things = ['first thing', 'second', 'yet another']
for ii, item in enumerate(things):
print(ii, item)
0 first thing
1 second
2 yet another
この演習はコースの一部です
MATLABユーザーのためのPython
演習の手順
- 配列
weekday_trafficの形状を確認し、どの軸が橋の側(東西)と時刻(時間)に対応しているかを特定します。 enumerate()を使って反復回数を数えながら、weekday_trafficの列をループします。- 各ループで、
weekday_trafficの該当列をsidewalk内の対応するlabelとともにプロットします。 - 凡例を作成し、プロットを表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
sidewalk = ['East','West']
# Explore the shape of the array weekday_traffic
print(weekday_traffic.____)
# Loop over the columns of weekday_traffic, counting the number of iterations
for ii, sidewalk_traffic in ____(weekday_traffic.T):
# Plot the column with the corresponding label in sidewalk
plt.plot(sidewalk_traffic, ____=sidewalk[ii])
# Create the legend and show the plot
plt.____()
____