1. ホーム
  2. python

[解決済み] Matplotlibでグラフの背景色の不透明度を設定する方法

2023-08-06 14:07:37

質問

Matplotlibで遊んでいるのですが、グラフの背景色を変更する方法、または背景を完全に透明にする方法がわかりません。

どのように解決するのですか?

図と軸の両方の背景全体を透明にしたいだけなら、単純に transparent=True で図を保存する際に fig.savefig .

など。

import matplotlib.pyplot as plt
fig = plt.figure()
plt.plot(range(10))
fig.savefig('temp.png', transparent=True)

より細かい制御が必要な場合は、図と軸の背景パッチの facecolor および/または alpha 値を単純に設定することができます。 (パッチを完全に透明にするには、アルファ値を0に設定するか、フェースカラーを 'none' (オブジェクトではなく文字列として None !))

など。

import matplotlib.pyplot as plt

fig = plt.figure()

fig.patch.set_facecolor('blue')
fig.patch.set_alpha(0.7)

ax = fig.add_subplot(111)

ax.plot(range(10))

ax.patch.set_facecolor('red')
ax.patch.set_alpha(0.5)

# If we don't specify the edgecolor and facecolor for the figure when
# saving with savefig, it will override the value we set earlier!
fig.savefig('temp.png', facecolor=fig.get_facecolor(), edgecolor='none')

plt.show()

<イグ