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

Matplotlib의 Axes(축) 객체란 정확히 무엇일까?

Matplotlib의 Axes(축) 객체란?

Matplotlib에서 Axes 클래스는 그래프를 구성하는 대부분의 요소를 담고 있는 핵심 객체입니다. 여기에는 Axis(축), Tick(눈금), Line2D(선), Text(텍스트), Polygon(다각형) 등이 포함되며, 데이터가 표시되는 좌표계(coordinate system) 역시 이 객체가 설정합니다.

쉽게 말해, Figure가 전체 그림을 담는 캔버스라면 Axes는 실제로 데이터가 그려지는 개별 플롯 영역이라고 할 수 있습니다. 따라서 Matplotlib로 시각화를 다룰 때 Axes 객체의 구조를 이해하는 것이 매우 중요합니다.

구현 단계

  • 그림 크기(figure size)를 설정하고 서브플롯 사이 및 주변의 여백(padding)을 조정합니다.
  • rcParams를 사용하여 축 선의 두께(linewidth)를 지정합니다.
  • 현재 Figure에 새로운 Axes를 추가하고 이를 현재 축(current axes)으로 만듭니다.
  • Axes의 스파인(spine, 테두리 선) 색상을 각 방향별로 설정합니다.
  • show() 메서드를 호출하여 그림을 화면에 표시합니다.

예제 코드

from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
plt.rcParams['axes.linewidth'] = 5

ax = plt.axes()

ax.spines['bottom'].set_color('yellow')
ax.spines['top'].set_color('red')
ax.spines['right'].set_color('black')
ax.spines['left'].set_color('blue')

plt.show()

실행 결과

Matplotlib의 Axes(축) 객체란 정확히 무엇일까?

위 코드를 실행하면 아래쪽 스파인은 노란색, 위쪽은 빨간색, 오른쪽은 검은색, 왼쪽은 파란색으로 각각 다르게 표시됩니다. 이처럼 ax.spines 딕셔너리에 접근하면 네 방향의 테두리 선을 자유롭게 꾸밀 수 있으며, rcParamsaxes.linewidth 값을 조절해 테두리 두께도 손쉽게 변경할 수 있습니다.