のsubplotsコマンド( urinietoが指すコマンドとは異なり、末尾のsに注意)に基づいて関数を定義できます。subplot
matplotlib.pyplot
以下は、あなたの関数に基づいたそのような関数の例であり、図に複数の軸をプロットすることができます。図のレイアウトで必要な行と列の数を定義できます。
def plot_figures(figures, nrows = 1, ncols=1):
"""Plot a dictionary of figures.
Parameters
----------
figures : <title, figure> dictionary
ncols : number of columns of subplots wanted in the display
nrows : number of rows of subplots wanted in the figure
"""
fig, axeslist = plt.subplots(ncols=ncols, nrows=nrows)
for ind,title in enumerate(figures):
axeslist.ravel()[ind].imshow(figures[title], cmap=plt.gray())
axeslist.ravel()[ind].set_title(title)
axeslist.ravel()[ind].set_axis_off()
plt.tight_layout() # optional
nrows
基本的に、この関数は、必要な行( )と列( )の数に応じて、図にいくつかの軸を作成し、ncols
軸のリストを繰り返して画像をプロットし、それぞれにタイトルを追加します。
辞書に画像が1つしかない場合は、以前の構文plot_figures(figures)
が機能し、デフォルトでに設定されnrows
てncols
いることに注意してください。1
入手できるものの例:
import matplotlib.pyplot as plt
import numpy as np
# generation of a dictionary of (title, images)
number_of_im = 6
figures = {'im'+str(i): np.random.randn(100, 100) for i in range(number_of_im)}
# plot of the images in a figure, with 2 rows and 3 columns
plot_figures(figures, 2, 3)