はじめに
この実験では、Matplotlib を使って単位付きのグループバーチャートを作成する方法を学びます。バーチャートは、グループと飲料の選択によるカップの高さを表示します。このチュートリアルでは、Python コードを使ってチャートを作成する手順を案内します。
VM のヒント
VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。
時々、Jupyter Notebook が読み込み終了するまで数秒待つ必要がある場合があります。Jupyter Notebook の制限により、操作の検証は自動化できません。
学習中に問題がある場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。
必要なライブラリをインポートする
最初のステップは、必要なライブラリをインポートすることです。バーチャートを作成するために、NumPy と Matplotlib を使用します。cmとinchの単位は、単位を変換するために使用されるbasic_units.pyファイルに定義されています。
import matplotlib.pyplot as plt
import numpy as np
from basic_units import cm, inch
データを定義する
次のステップは、バーチャートを作成するために使用するデータを定義することです。茶用とコーヒー用の 2 セットのデータを作成します。各セットは 5 つの値を持ち、各グループに 1 つずつです。カップの高さはセンチメートルで表されます。
N = 5
tea_means = [15*cm, 10*cm, 8*cm, 12*cm, 5*cm]
tea_std = [2*cm, 1*cm, 1*cm, 4*cm, 2*cm]
coffee_means = (14*cm, 19*cm, 7*cm, 5*cm, 10*cm)
coffee_std = (3*cm, 5*cm, 2*cm, 1*cm, 2*cm)
グラフと軸のオブジェクトを作成する
次のステップは、グラフと軸のオブジェクトを作成することです。グラフと軸のオブジェクトを作成するために、subplots()関数を使用します。
fig, ax = plt.subplots()
ax.yaxis.set_units(inch)
バーチャートのパラメータを定義する
次のステップは、バーチャートのパラメータを定義することです。グループの x 位置、バーの幅、および x 軸目盛りのラベルを定義します。
ind = np.arange(N) ## the x locations for the groups
width = 0.35 ## the width of the bars
ax.set_xticks(ind + width / 2, labels=['G1', 'G2', 'G3', 'G4', 'G5'])
バーチャートを作成する
次のステップは、バーチャートを作成することです。チャートを作成するためにbar()関数を使用します。茶用とコーヒー用の 2 セットのバーを作成します。また、チャートに誤差棒も追加します。
ax.bar(ind, tea_means, width, bottom=0*cm, yerr=tea_std, label='Tea')
ax.bar(ind + width, coffee_means, width, bottom=0*cm, yerr=coffee_std,
label='Coffee')
チャートにラベルとタイトルを追加する
最後のステップは、チャートにラベルとタイトルを追加することです。チャートにタイトル、x 軸のラベル、およびチャートの凡例を追加します。
ax.set_title('Cup height by group and beverage choice')
ax.set_xlabel('Group')
ax.legend()
ax.autoscale_view()
まとめ
この実験では、Matplotlib を使って単位付きのグループバーチャートを作成する方法を学びました。必要なライブラリをインポートする方法、データを定義する方法、グラフと軸のオブジェクトを作成する方法、バーチャートのパラメータを定義する方法、バーチャートを作成する方法、およびチャートにラベルとタイトルを追加する方法を学びました。この知識を使えば、Matplotlib を使って独自のバーチャートを作成できます。