Menu
CoddyTech

複数のグラフを1つに

CoddyのMachine Learningジャーニー「データとプロット」セクションの一部。レッスン 28/60。

フードトラックは、来客数と待ち時間を記録しています。単位が異なるため、1つの図に2つのグラフを並べて表示すると見やすくなります。

横に並んだ2つのグラフ:月曜日から金曜日までの来客数を示す棒グラフは金曜日に150人まで増加し、待ち時間(分)を示す折れ線グラフは金曜日に12分まで増加

忙しい日、長い待ち時間。一目で状況がわかります。plt.subplots(1, 2) は1行に2つのグラフを作成し、左側がaxs[0]、右側がaxs[1]です。

days = ["Mon", "Tue", "Wed", "Thu", "Fri"]
customers = [60, 85, 70, 120, 150]
wait = [4, 6, 5, 9, 12]
fig, axs = plt.subplots(1, 2)
axs[0].bar(days, customers)
axs[0].set_title("Customers")
axs[1].plot(days, wait)
axs[1].set_title("Wait (min)")
plt.show()

それぞれが、これまでに学んだメソッドを備えた完全なグラフです。形状のように、行を先に指定します。plt.subplots(2, 1)は行を縦に並べます。

challenge icon

チャレンジ

中級

あるハイカーが8回のハイキングを記録しました。歩いた距離はkm、かかった時間はhoursです。スターターコードのlabel(ax, title, xlabel, ylabel)は、1つのグラフに名前を付けます。2つのグラフを横に並べて描きましょう。

  1. 左:横軸にhikesのハイキング番号、縦軸にkmをとった折れ線グラフ。
  2. 右:ハイキング1回につき点を1つ描き、横軸に距離、縦軸に時間をとります。
  3. 以下のテキストを使い、それぞれのグラフにlabelを1回呼び出して名前を付けます。

別のハイカーの記録から作成した、こちらのグラフのようになるはずです。

横に並んだ2つのグラフ:左はDistance per Hikeというタイトルの折れ線グラフで、横軸はHike、縦軸はDistance (km)。右はTime vs Distanceというタイトルの散布図で、横軸はDistance (km)、縦軸はTime (h)

テキストは、左がDistance per Hike、Hike、Distance (km)、右がTime vs Distance、Distance (km)、Time (h)です。プログラムは何も出力しません。

自分で試してみよう

import numpy as np
import matplotlib.pyplot as plt

hikes = np.arange(1, 9)
km = np.array([8.0, 12.5, 6.0, 15.0, 10.0, 18.5, 9.5, 14.0])
hours = np.array([2.5, 4.0, 2.0, 5.0, 3.5, 6.5, 3.0, 4.5])


# 1つのグラフにタイトルと軸ラベルを設定する(何も返さない)
def label(ax, title, xlabel, ylabel):
    ax.set_title(title)
    ax.set_xlabel(xlabel)
    ax.set_ylabel(ylabel)


# 以下にコードを書いてください

# 以下の行は変更しないでください
plt.show()
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

データとプロットのすべてのレッスン

自分で練習してみよう: Pythonオンラインコンパイラ