Python でグラフを描く Matplotlib #5

株式会社リュディアです。Python でグラフを描く方法についてまとめます。引き続き Matplotlib を使った方法についてです。

前回までの Python でグラフを描く Matplotlib のまとめへのリンクは以下を参考にしてください。

今回は前回の続きで subplot とグラフの配置場所についてです。前回、いろいろな記述に対してグラフがどのように並ぶかという結果だけをご覧いただきましたが今日は内容の解説です。以下の subplot に関する解説の図を見てください。

画像1

subplot の後にある数は3桁の数というよりは 3つの独立した数が隙間なく並んでいると理解する必要があります。例えば 121 と書かれている場合は1行2列のグラフ配置可能領域が存在し、その配置場所 1 にグラフを置くという意味になります。3桁の数は前から順番にグラフ配置可能領域の行数列数グラフの配置場所指定を表します。

この内容を頭に入れた状態で前回の例を見ていきましょう。

plt.subplot(121)
plt.plot(x, y1) 

plt.subplot(122) 
plt.plot(x, y2)

まず配置可能領域は L=1, M=2 つまり1行2列の 2か所になります。その2か所に対し領域  N = 1、領域 N= 2 に 1 つずつ配置するという指示です。結果として次のような配置になります。わかりますね。

画像2

では次の例です。

plt.subplot(121)
plt.plot(x, y1) 

plt.subplot(121) 
plt.plot(x, y2)

配置可能領域は L=1, M=2 つまり1行2列の 2か所になります。その2か所に2つのグラフとも N = 1 の領域に配置するという指示です。結果として次のような配置になります。

画像3

配置場所が 2 つ確保されていることはウインドウのサイズからわかりますね。2つのグラフとも領域 N = 1 に配置したので 2つのグラフが1つのグラフ上に重なって表示されています。では次の例です。

plt.subplot(131)
plt.plot(x, y1) 

plt.subplot(133) 
plt.plot(x, y2)

配置可能領域は L=1, M=3 つまり1行3列の 3か所になります。その3か所のうちの 2か所 N = 1, N = 3 に2つのグラフを配置するという指示です。結果として次のような配置になります。配置可能な場所が 3 つあり、N = 1, N = 3 と指定しているので N = 2 の場所があいているのがわかりますね。

画像4

では最後の例です。配置可能領域は L=2, M=3 つまり2行3列の 6か所になります。その6か所のうちの 2か所 N = 1, N=6 に 2つのグラフを配置するという指示です。

plt.subplot(231)
plt.plot(x, y1) 

plt.subplot(236) 
plt.plot(x, y2)

画像5

配置可能場所が 6 箇所あって、その先頭 N = 1 と最後 N = 6 に配置されていることがわかりますね。

今回は subplot の配置場所の指定方法についてまとめを行いました。

Python でグラフを描く Matplotlib に関するまとめの続きは以下からどうぞ。

では、ごきげんよう。


この記事が気に入ったらサポートをしてみませんか?