プロット用関数を使う
関数を定義すると、同じコードを繰り返し書かずに再利用できます。プログラマーはときどき "Don't repeat yourself"(繰り返しを避ける)と言います。
前の演習では、plot_timeseries という関数を定義しました:
plot_timeseries(axes, x, y, color, xlabel, ylabel)
この関数は、Axes オブジェクト(引数 axes)、時系列データ(引数 x と y)、色名(文字列で color 引数として指定)、そして x 軸と y 軸のラベル(xlabel と ylabel 引数)を受け取ります。今回の演習では、関数 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()