Matplotlib에서 눈금(tick)을 추가하지 않고도 축 레이블을 하단에서 상단으로 이동할 수 있습니다. 이 글에서는 tick_params() 메서드를 활용해 레이블 위치를 손쉽게 변경하는 방법을 단계별로 살펴보겠습니다.
구현 단계
- 그림(figure) 크기를 설정하고, 서브플롯 사이 및 주변 여백(padding)을 조정합니다.
- NumPy를 사용하여 5×5 크기의 랜덤 데이터 행렬을 생성합니다.
- imshow() 메서드를 사용해 데이터를 2D 래스터 이미지 형태로 화면에 표시합니다.
- tick_params() 메서드를 사용하여 레이블을 하단에서 상단으로 이동시킵니다.
- show() 메서드를 호출하여 최종 그림을 출력합니다.
예제 코드
import numpy as np
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
data = np.random.rand(5, 5)
plt.imshow(data, cmap="copper")
plt.tick_params(axis='both', which='major',
labelsize=10, labelbottom=False,
bottom=True, top=False, labeltop=True)
plt.show()핵심 포인트
위 코드에서 가장 중요한 부분은 tick_params()의 매개변수 설정입니다. labelbottom=False로 하단 레이블을 숨기고, labeltop=True로 상단에 레이블을 표시하도록 지정합니다. 또한 top=False를 설정하면 상단에 눈금선 자체는 나타나지 않으므로, 눈금 없이 레이블만 위쪽으로 이동한 깔끔한 결과를 얻을 수 있습니다.
실행 결과
코드를 실행하면 'copper' 컬러맵이 적용된 5×5 랜덤 데이터 히트맵이 출력되며, x축과 y축의 레이블이 각각 상단과 좌측에 배치된 것을 확인할 수 있습니다.