始める無料で始める

プロット用関数を使う

関数を定義すると、同じコードを繰り返し書かずに再利用できます。プログラマーはときどき "Don't repeat yourself"(繰り返しを避ける)と言います。

前の演習では、plot_timeseries という関数を定義しました:

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

この関数は、Axes オブジェクト(引数 axes)、時系列データ(引数 xy)、色名(文字列で color 引数として指定)、そして x 軸と y 軸のラベル(xlabelylabel 引数)を受け取ります。今回の演習では、関数 plot_timeseries はすでに定義済みで提供されています。

この関数を使って、pandas の DataFrame オブジェクトとして提供されている climate_change の時系列データをプロットしてください。この DataFrame には、測定日の DateTimeIndex と、co2 列および relative_temp 列があります。

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

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

コースを見る

演習の手順

  • 提供された ax オブジェクトで、関数 plot_timeseries を使い、"co2" 列を青でプロットし、x 軸ラベルを "Time (years)"、y 軸ラベルを "CO2 levels" にします。
  • ax.twinx メソッドを使って、ax と x 軸を共有する Axes オブジェクトを図に追加します。
  • 関数 plot_timeseries を使って、ツインの Axes オブジェクトに "relative_temp" 列のデータを赤で追加し、x 軸ラベルを "Time (years)"、y 軸ラベルを "Relative temperature (Celsius)" にします。

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

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

fig, ax = plt.subplots()

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

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

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

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