Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Matplotlib 플롯의 기본 배경색 변경 방법

Matplotlib에서 생성되는 플롯은 기본적으로 흰색 배경을 사용합니다. 이 기본 배경색을 다른 색으로 바꾸고 싶다면 set_facecolor() 메서드를 활용하면 됩니다. 아래에서 단계별로 그 과정을 살펴보겠습니다.

구현 단계

  • 그림(figure) 크기를 설정하고, 서브플롯 사이와 주변의 여백(padding)을 조정합니다.
  • 현재 축(axis)을 가져옵니다.
  • 현재 figure에 nrows=1, ncols=2, index=1 옵션으로 첫 번째 서브플롯을 추가합니다.
  • 무작위 x, y 데이터 포인트를 plot() 메서드로 그립니다.
  • 해당 서브플롯에 제목을 설정합니다.
  • 같은 방식으로 nrows=1, ncols=2, index=2 옵션으로 두 번째 서브플롯을 추가합니다.
  • 다시 현재 축을 가져옵니다.
  • set_facecolor() 메서드를 사용해 원하는 사용자 지정 배경색을 지정합니다.
  • x, y 데이터 포인트를 plot() 메서드로 그립니다.
  • 플롯의 제목을 설정합니다.
  • 마지막으로 show() 메서드를 호출하여 그림을 화면에 표시합니다.

예제 코드

import numpy as np
import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

ax = plt.gca()

print("Default face color is: ", ax.get_facecolor())

plt.subplot(121)
plt.plot(np.random.rand(10), np.random.rand(10))
plt.title("With default face color")
plt.subplot(122)

ax = plt.gca()
ax.set_facecolor("orange")

plt.plot(np.random.rand(10), np.random.rand(10))
plt.title("With customize face color")

plt.show()

실행 결과

코드를 실행하면 먼저 현재 축의 기본 배경색이 콘솔에 출력됩니다. Matplotlib의 기본 facecolor는 흰색(#FFFFFF)입니다.

왼쪽 서브플롯은 기본 배경색이 적용된 상태이고, 오른쪽 서브플롯은 set_facecolor("orange")를 호출하여 주황색 배경으로 변경된 것을 확인할 수 있습니다.

Matplotlib 플롯의 기본 배경색 변경 방법

추가 팁

모든 플롯에 일괄적으로 배경색을 적용하고 싶다면 rcParams 설정을 활용할 수 있습니다. 예를 들어 plt.rcParams["axes.facecolor"] = "lightgray"처럼 설정하면 이후 생성되는 모든 축에 해당 색상이 기본값으로 적용됩니다. 또한 색상 이름 외에도 HEX 코드(예: "#FFA500")나 RGB 튜플 형태로도 배경색을 지정할 수 있습니다.