始める無料で始める

時系列プロット:総まとめ

この演習では、スケールが異なる2つの時系列を同じ Axes 上にプロットし、そのうち一方のデータに注釈を追加します。

CO2/気温データは climate_change という DataFrame として提供されています。以前に定義した plot_timeseries 関数も使用してください。この関数は Axes オブジェクト(axes 引数)を受け取り、時系列(xy 引数)をプロットし、x 軸と y 軸のラベルを設定し、データと y 目盛/軸ラベルの色を設定します。

plot_timeseries(axes, x, y, color, xlabel, ylabel)

最後に、データ内の重要な時点にテキストで注釈を付けます。2015-10-06 に、平均より 1 度を初めて上回った時点です。

この演習はコースの一部です

Matplotlibで学ぶデータ可視化入門

コースを見る

演習の手順

  • plot_timeseries 関数を使って、時間に対する CO2 濃度をプロットします。xlabel を "Time (years)"、ylabel を "CO2 levels"、color を 'blue' に設定します。
  • 最初の Axes の双子として ax2 を作成します。
  • ax2 で、時間に対する気温をプロットし、ylabel を "Relative temp (Celsius)"、color を 'red' に設定します。
  • ax2.annotate メソッドでデータに注釈を追加します。テキスト ">1 degree" を x=pd.Timestamp('2008-10-06')、y=-0.2 に配置し、灰色の細い矢印で x=pd.Timestamp('2015-10-06')、y=1 を指すようにします。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

fig, ax = plt.subplots()

# Plot the CO2 levels time-series in blue
plot_timeseries(____, ____, ____, 'blue', ____, ____)

# Create an Axes object that shares the x-axis
ax2 = ____

# Plot the relative temperature data in red
plot_timeseries(____, ____, ____, 'red', ____, ____)

# Annotate point with relative temperature >1 degree
ax2.____(">1 degree", ____, ____, ____)

plt.show()
コードを編集して実行