matplotlib.pyplot.subplots #
- matplotlib.pyplot. subplots ( nrows = 1 , ncols = 1 , * , sharex = False , sharey = False , squeeze = True , width_ratios = None , height_ratios = None , subplot_kw = None , gridspec_kw = None , ** fig_kw ) [source] #
Figure と一連のサブプロットを作成します。
このユーティリティ ラッパーは、1 回の呼び出しで、囲んでいる Figure オブジェクトを含む、サブプロットの一般的なレイアウトを作成するのに便利です。
- パラメータ:
- nrows、ncols int、デフォルト: 1
サブプロット グリッドの行数/列数。
- sharex、sharey bool または {'none'、'all'、'row'、'col'}、デフォルト: False
x ( sharex ) または y ( sharey ) 軸間でのプロパティの共有を制御します。
True または 'all': x 軸または y 軸がすべてのサブプロット間で共有されます。
False または 'none': 各サブプロットの x 軸または y 軸は独立しています。
'row': 各サブプロット行は x 軸または y 軸を共有します。
'col': 各サブプロット列は x 軸または y 軸を共有します。
サブプロットが列に沿って共有の x 軸を持つ場合、下部のサブプロットの x 目盛りラベルのみが作成されます。同様に、サブプロットが行に沿って共有の y 軸を持つ場合、最初の列のサブプロットの y 目盛りラベルのみが作成されます。後で他のサブプロットの目盛りラベルをオンにするには、 を使用します
tick_params
。サブプロットに単位を持つ共有軸がある場合、呼び出し
set_units
によって各軸が新しい単位で更新されます。- スクイーズブール、デフォルト: True
True の場合、返された の配列から余分な次元が絞り出され
Axes
ます:サブプロットが 1 つだけ作成された場合 (nrows=ncols=1)、結果の単一の Axes オブジェクトがスカラーとして返されます。
Nx1 または 1xM サブプロットの場合、返されるオブジェクトは Axes オブジェクトの 1D numpy オブジェクト配列です。
NxM の場合、N>1 および M>1 のサブプロットが 2D 配列として返されます。
False の場合、スクイーズはまったく行われません。返される Axes オブジェクトは、最終的に 1x1 になる場合でも、常に Axes インスタンスを含む 2D 配列です。
- width_ratios長さncolsの配列のようなもの、オプション
列の相対的な幅を定義します。各列の相対的な幅はです。指定しない場合、すべての列が同じ幅になります。に相当します。
width_ratios[i] / sum(width_ratios)
gridspec_kw={'width_ratios': [...]}
- height_ratios長さnrowsの配列のようなもの、オプション
行の相対的な高さを定義します。各行の相対的な高さはです。指定しない場合、すべての行が同じ高さになります。の利便性。
height_ratios[i] / sum(height_ratios)
gridspec_kw={'height_ratios': [...]}
- subplot_kw 辞書、オプション
add_subplot
各サブプロットの作成に使用される呼び出しに渡されるキーワードを含む辞書 。- gridspec_kw 辞書、オプション
GridSpec
サブプロットが配置されるグリッドを作成するために使用されるコンストラクターに渡されるキーワードを含む Dict 。- **fig_kw
追加のキーワード引数はすべて呼び出しに渡され
pyplot.figure
ます。
- 戻り値:
- 図
Figure
- ax
Axes
または Axes の配列 axは、単一の
Axes
オブジェクト、または複数のサブプロットが作成された場合は Axes オブジェクトの配列のいずれかになります。結果の配列の次元は、squeeze キーワードで制御できます。上記を参照してください。戻り値を処理するための一般的なイディオムは次のとおりです。
# using the variable ax for single a Axes fig, ax = plt.subplots() # using the variable axs for multiple Axes fig, axs = plt.subplots(2, 2) # using tuple unpacking for multiple Axes fig, (ax1, ax2) = plt.subplots(1, 2) fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2)
後者の場合、単一のインスタンスを指すのか、これらのコレクションを 指すのかが明確でないため、
ax
複数形の名前axs
が優先されます。axes
Axes
- 図
例
# First create some toy data: x = np.linspace(0, 2*np.pi, 400) y = np.sin(x**2) # Create just a figure and only one subplot fig, ax = plt.subplots() ax.plot(x, y) ax.set_title('Simple plot') # Create two subplots and unpack the output array immediately f, (ax1, ax2) = plt.subplots(1, 2, sharey=True) ax1.plot(x, y) ax1.set_title('Sharing Y axis') ax2.scatter(x, y) # Create four polar axes and access them through the returned array fig, axs = plt.subplots(2, 2, subplot_kw=dict(projection="polar")) axs[0, 0].plot(x, y) axs[1, 1].scatter(x, y) # Share a X axis with each column of subplots plt.subplots(2, 2, sharex='col') # Share a Y axis with each row of subplots plt.subplots(2, 2, sharey='row') # Share both X and Y axes with all subplots plt.subplots(2, 2, sharex='all', sharey='all') # Note that this is the same as plt.subplots(2, 2, sharex=True, sharey=True) # Create figure number 10 with a single subplot # and clears it if it already exists. fig, ax = plt.subplots(num=10, clear=True)
#を使用した例matplotlib.pyplot.subplots
margin と sticky_edges を使用してビュー制限を制御する
図のラベル: suptitle、supxlabel、supylabel
サブプロットと GridSpec を使用して 2 つのサブプロットを組み合わせる
plt.subplots を使用して複数のサブプロットを作成する
PatchCollection を使用してエラー バーからボックスを作成する
ヒストグラム関数のさまざまな histtype 設定のデモ
複数のデータセットを使用したヒストグラム (hist) 関数
Matplotlib で ttf フォント ファイルを使用する
自動スケーリングによる Line、Poly、RegularPoly コレクション
Inset Axes を使用したカラーバーの位置とサイズの制御
Rectangles と PolyCollections を使用したヒストグラムの作成
レーダー チャート (別名スパイダー チャートまたはスター チャート)
ConciseDateFormatter を使用した日付ティックの書式設定
ポリゴン セレクターを使用してコレクションからインデックスを選択する