plt.subplotsとは?初心者でもすぐ分かる使い方と基本の図の作成共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
plt.subplotsとは?初心者でもすぐ分かる使い方と基本の図の作成共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


plt.subplotsとは何か

plt.subplots は Python のデータ可視化ライブラリである Matplotlib の中の代表的な関数です。図とその中のサブプロットを一度に作成できる点が大きな魅力です。1 つの窓に複数のグラフを並べて表示したいときにとても便利で、初心者がグラフのレイアウトを理解する入り口としておすすめです。まず覚えておきたいのは figax という二つの要素が返ってくる点です。fig は全体の図、ax は個々の軸を指します。

基本の使い方

使い方はとてもシンプルです。まず matplotlib.pyplot をインポートし、plt.subplots を呼び出します。

コード

import matplotlib.pyplot as plt

fig, ax = plt.subplots()

ax.plot([1, 2, 3], [1, 4, 9])

plt.show()

複数のサブプロットを作る例

nrows と ncols を使うと、縦に並ぶ図の行数と横に並ぶ列数を指定できます。例えば 2 行 2 列のサブプロットを作るには次のようにします。

fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(8, 6))

このとき返り値は fig と 2 次元の配列のような Axes オブジェクトになります。配列の要素を使って各サブプロットにデータを描画できます。

axes[0,0].plot([1,2,3], [1, 4, 9])

axes[0,1].plot([1,2,3], [2, 3, 5])

plt.show()

サブプロットのレイアウト調整

グラフ同士が重なる場合は layout や tight_layout を使って余白を調整します。例えば

fig.tight_layout()

よく使う引数と返り値

下表は plt.subplots の代表的な引数と返り値の説明です。

引数説明
nrows行数
ncols列数
figsize図の大きさ
sharexx 軸の共有設定
shareyy 軸の共有設定
squeeze1 つのサブプロットの場合の戻り値の形

まとめ

plt.subplots を使うと、図と複数のサブプロットを同時に作成でき、後は各サブプロットにデータを描くだけでOK です。初めは 1 つのグラフから始めて、徐々に nrows や ncols を増やしていくと、見栄えの良いダッシュボード風の図を簡単に作成できます。


plt.subplotsの同意語

サブプロットを作成する
Matplotlib で複数の描画領域(サブプロット)を一括で生成する機能。plt.subplots を呼ぶと Figure と Axes が返され、グリッド状に配置された複数の図領域を準備できます。
FigureとAxesを同時に作成する
1回の関数呼び出しで、図全体を表す Figure オブジェクトと、各描画領域を表す Axes オブジェクトを作成・返却する機能。
グリッド状のサブプロットを生成する
行数と列数を指定して、グリッド形式の複数サブプロットを自動的に作成する機能。
複数のグラフ領域を作成する
1つの呼び出しで複数の描画エリアを準備し、同一の Figure 内に並べることができる機能。
マルチプロットを簡単に作る
複数のプロット領域を効率的に配置・生成するための使いやすい手段。
サブグラフ領域を配置する
図の中に複数の小さなグラフエリアを整然と配置するための機能。
サブプロットのレイアウトを一括作成する
行と列を指定して、サブプロットの全体的なレイアウトを一度に用意する機能。
1回の呼び出しで複数のAxesを返す関数
plt.subplots は 1 回の呼び出しで Figure と Axes の集合を返し、各サブプロットを描画可能にする。
Matplotlib のサブプロット作成機能
Matplotlib でサブプロットを作るための代表的な機能セットを指す総称的な表現。

plt.subplotsの対義語・反対語

plt.figure
サブプロットを自動的に作成せず、1つのFigure(図全体)を作成する状態。複数のAxesを並べるsubplotsとは対照的です。
単一図
1つの図だけを描く状態。複数のサブプロットを持たず、全体を1つのグラフとして扱います。
サブプロットなし
サブプロットを作成せず、1つのグラフ(Axes)だけを用いて描画する考え方。
単一Axes
1つのAxesオブジェクトだけを用いて描画する状態。複数のAxesを生成するsubplotsの対義語的なイメージです。
単一グラフ
1つのグラフ(図)に描画を絞る状態。subplotを使わず、1つのグラフで完結します。
1x1レイアウト
1行1列のサブプロット配置。実質的には1つのグラフを表示するレイアウトのことを指します。

plt.subplotsの共起語

Matplotlib
Pythonのデータ可視化ライブラリの総称。plt.subplotsはこのライブラリの機能の一部です。
Figure
図全体のキャンバス。plt.subplotsはこのFigureオブジェクトを返します。
Axes
実際のグラフ領域。座標軸とデータを描く領域です。
fig
Figureオブジェクトを指す通称・変数名の一つ。
axes
Axesオブジェクトの集合(または1つのAxes)。
subplots
複数のサブプロットを一度に作成する関数。
add_subplot
Figureに新しいAxesを追加する操作。
subplot_kw
Axes作成時の追加設定を辞書で渡す引数。
gridspec
GridSpecオブジェクト。サブプロットの柔軟な配置を実現します。
gridspec_kw
GridSpecの配置設定を辞書で渡す引数。
nrows
作成するサブプロットの行数。
ncols
作成するサブプロットの列数。
sharex
複数のAxesでx軸を共有する設定。
sharey
複数のAxesでy軸を共有する設定。
figsize
図の横幅と高さをインチで指定する設定。
dpi
図の解像度(1インチあたりのドット数)を指定する設定。
facecolor
Figureの背景色を指定します。
edgecolor
Figureの枠線の色を指定します。
constrained_layout
自動的にサブプロットの間隔を最適化するレイアウト方針。
tight_layout
自動で余白を調整するレイアウト手法。
squeeze
返り値の次元を自動的に削減する設定。
suptitle
Figureの上部に全体タイトルを表示する機能。
subplots_adjust
サブプロット間の余白を手動で調整する関数。
AxesSubplot
Axesの具体的なクラス名(典型的にはAxesSubplot)。
ndarray
複数のAxesが返る場合、NumPyの配列(ndarray)になることがあるデータ型。

plt.subplotsの関連用語

plt.subplots
Matplotlibの高機能なサブプロット作成関数。1つのFigureに複数のAxesを一括で配置する。返り値は通常 fig, axs の組。nrows×ncolsのグリッド状にサブプロットが配置される。
Figure
図全体を表すオブジェクト。サブプロットやタイトル、カラーマップなどをまとめて管理する容れ物。
Axes
1つの描画領域を表すオブジェクト。データの描画メソッドや軸・目盛・ラベルが含まれ、複数のAxesをFigureに配置できる。
AxesSubplot
Axesのサブクラスで、サブプロットとして実際に描画を担当するオブジェクトの型名。plt.subplotsの出力でよく使われる。
ax
AxesSubplotオブジェクトを指す通称の変数名。複数のサブプロットを扱う場合によく用いられる。
nrows
サブプロットの行数を指定する引数。
ncols
サブプロットの列数を指定する引数。
figsize
Figureの横幅と高さをインチ単位で指定する引数。
dpi
1インチあたりのドット数。解像度を決める設定。
sharex
複数のサブプロット間でX軸を共有する設定。
sharey
複数のサブプロット間でY軸を共有する設定。
squeeze
返り値のAxesの配列の形を自動的に単純化するかどうかを制御する引数。Trueで1つならAxesを直接返す。
subplots_adjust
Figure内のサブプロット間の間隔を手動で調整するメソッド
tight_layout
サブプロット間のスペースを自動的に最適化し、重なりを防ぐ機能。
gridspec
より自由度の高いレイアウト設計を可能にする格子配置システム
GridSpec
gridspecを実現するクラス。サブプロットの配置を細かく指定できる。
suptitle
Figure全体の上部に表示するタイトル。全サブプロットに適用される共通タイトル。
add_subplot
既存のFigureに1つのAxesを追加するメソッド
subplot
Figure内の1つのサブ領域。Axesとして表現されることが多い。
plot
Axes上に線グラフを描画する基本メソッド
scatter
Axes上に散布図を描画するメソッド。
bar
Axes上に棒グラフを描画するメソッド
hist
Axes上にヒストグラムを描画するメソッド。
imshow
配列データを画像として表示するメソッド
colorbar
カラーマップとデータ値の対応を示すカラー・バーを追加する補助要素。
legend
グラフ内の各データ系列の説明(凡例)を表示する機能。
title
サブプロットのタイトルを設定するメソッド。
xlabel
X軸のラベルを設定するメソッド。
ylabel
Y軸のラベルを設定するメソッド。
axis
軸の表示設定全般を操作するメソッド。範囲や目盛の設定を含むことが多い。
xlim
X軸の表示範囲を指定する設定。
ylim
Y軸の表示範囲を指定する設定。
projection
3Dなど、座標系を特殊化して描画する設定。主に3Dプロットで使われる。

plt.subplotsのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
14226viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2374viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1054viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
931viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
899viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
882viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
783viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
778viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
761viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
735viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
682viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
647viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
545viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
538viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
537viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
529viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
497viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
469viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
427viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
422viws

新着記事

インターネット・コンピュータの関連記事