MatplotlibのFigureオブジェクトの書式#

公開日

この記事では、Figureオブジェクトの書式を設定する方法を解説します。書式の設定では、グラフの大きさや背景色などを変更可能です。

matplotlib.pyplot.subplots()関数を使うと、FigureオブジェクトはAxesオブジェクトと併せて作成されます(matplotlib.pyplot.figure()関数でもFigureオブジェクト単体を作成できます)。

matplotlib.pyplot.subplots()関数のオプションで、Figureオブジェクトの書式を設定します。主なオプションを以下に示します。

オプション

説明

figsize

(float, float)

幅と高さ(単位:インチ。デフォルト値:(6.4, 4.8)

facecolor

color

背景色(デフォルト値:white

edgecolor

color

(デフォルト値:white

linewidth

float

枠線の太さ

frameon

bool

Trueの場合、枠線を描画する(デフォルト値:True

サイズ#

Figureオブジェクトのサイズを変更するには、subplots()関数のfigsizeオプションで(幅, 高さ)を指定します。

import matplotlib.pyplot as plt

fig, ax = plt.subplots(figsize=(3, 4)) # 幅3インチ、高さ4インチ
ax.plot([1, 2, 3])
plt.show()

fig, ax = plt.subplots(figsize=(6, 4)) # 幅6インチ、高さ4インチ
ax.plot([1, 2, 3])
plt.show()
../_images/ddb9a38972d874c4de2b35f9bb00c2adec187973884767ca148b320e8dc21aa2.png ../_images/73f653e942b87bea7e0c85a312acb9b298c2fe4156c213a5ca7abe157ddece12.png

背景色・枠線#

Figureオブジェクトの背景色と枠線を変更するには、subplots()関数のfacecolor, edgecolorオプションでそれぞれ指定します。

fig, ax = plt.subplots(facecolor='lightgreen')
ax.plot([1, 2, 3])
plt.show()
../_images/1d7a7f0a35d4a5bf33af4ad75403426f47f94b19a2d1dfa8bd6674b224b1ef72.png
fig, ax = plt.subplots(edgecolor='green', linewidth=5)
ax.plot([1, 2, 3])
plt.show()
../_images/b945fa57d744f0098df249d35c71ee25f2ed446a2724d139d84435708196d48c.png