개요
Matplotlib에서 이미지를 표시할 때 컬러맵(colormap)을 설정하면 흑백 데이터를 다양한 색상으로 시각화하여 정보를 더욱 직관적으로 파악할 수 있습니다. 이 글에서는 이미지에 컬러맵을 적용하는 기본적인 절차를 단계별로 살펴보겠습니다.
컬러맵 설정 단계
- 그림(figure) 크기를 설정하고 서브플롯 주변과 사이의 여백(padding)을 자동으로 조정합니다.
imread()메서드를 사용해 파일로부터 이미지를 읽어 배열(array)로 변환합니다.- 이미지 배열에서 표시할 채널(예: R, G, B 중 하나)을 선택합니다.
imshow()함수로 2D 래스터(raster) 형태의 이미지를 화면에 나타내며, 이때cmap인자에 원하는 컬러맵을 지정합니다.- 불필요한 좌표축(axis)은 제거하여 깔끔하게 표시합니다.
- 마지막으로
show()메서드를 호출해 최종 결과물을 출력합니다.
예제 코드
아래 예제에서는 'bird.jpg' 이미지를 불러온 뒤, 첫 번째 채널(R 채널)만 추출하고 'hot' 컬러맵을 적용하여 표시합니다.
from matplotlib import pyplot as plt, image as mimg
# 그림 크기 및 레이아웃 설정
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
# 이미지 파일 읽기
img = mimg.imread('bird.jpg')
lum_img = img[:, :, 0] # 첫 번째 채널 선택
# 'hot' 컬러맵으로 이미지 표시
plt.imshow(lum_img, cmap="hot")
# 축 제거
plt.axis('off')
plt.show()실행 결과
위 코드를 실행하면 선택한 채널의 밝기 값이 검정→빨강→노랑→흰색 순서로 매핑되는 'hot' 컬러맵 이미지가 출력됩니다.

참고: 다양한 컬러맵 옵션
cmap 인자에는 'hot' 외에도 'viridis', 'plasma', 'inferno', 'magma', 'gray', 'jet' 등 다양한 내장 컬러맵을 사용할 수 있습니다. 데이터의 특성과 전달하고자 하는 메시지에 따라 적절한 컬러맵을 선택하면 시각화 효과를 극대화할 수 있습니다.