matplotlib에서 배경색 없이 해치(hatch) 패턴만으로 영역을 채우고 싶다면, fill_between() 함수에서 facecolor="none"으로 설정하고 hatch와 edgecolor 옵션을 함께 지정하면 됩니다. 아래 단계별로 자세히 살펴보겠습니다.
구현 단계
그림(figure) 크기를 설정하고 서브플롯 사이 및 주변의 여백을 조정합니다.
샘플 데이터의 개수를 저장할 변수 n을 초기화합니다.
그림과 서브플롯(subplot) 집합을 생성합니다.
x, y 데이터 포인트를 선 그래프로 플롯합니다.
x와 y 사이의 영역을 원형('o') 해치로 채우고, edgecolor="blue"로 해치 색상을 지정합니다.
show() 메서드를 호출하여 결과 그래프를 화면에 표시합니다.
예제 코드
import numpy as np import matplotlib.pyplot as plt # 그림 크기 설정 plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True # 샘플 데이터 개수 n = 256 # x, y 데이터 포인트 생성 x = np.linspace(-np.pi, np.pi, n, endpoint=True) y = np.sin(2 * x) # 그림과 서브플롯 집합 생성 fig, ax = plt.subplots() # 데이터 포인트 플롯 ax.plot(x, y, color='blue', alpha=1.0) # 배경색 없이 해치만으로 두 데이터 포인트 사이 영역 채우기 ax.fill_between(x, y, color='blue', alpha=.2, facecolor="none", hatch="o", edgecolor="blue", linewidth=1.0) # 그래프 표시 plt.show()
핵심 포인트
여기서 중요한 부분은 facecolor="none"입니다. 이 옵션이 있어야 영역 내부가 투명하게 유지되고, 오직 hatch="o"로 지정한 원형 패턴만 파란색(edgecolor="blue")으로 표시됩니다. 만약 facecolor에 특정 색상을 지정하면 해치 아래에 배경색이 함께 나타나므로 주의해야 합니다.
실행 결과
위 코드를 실행하면 사인 곡선 아래 영역이 배경색 없이 파란색 원형 해치 패턴으로만 채워진 그래프가 출력됩니다.
