Matplotlib에서 그림(figure)으로부터 컬러바 인스턴스를 가져오려면 imshow()로 생성한 ScalarMappable 객체를 colorbar() 메서드에 전달하면 됩니다. 이렇게 하면 반환되는 컬러바 인스턴스를 변수에 저장하여 이후 다양한 작업에 활용할 수 있습니다.
구현 단계
-1부터 1 사이의 값을 가지는 10×10 크기의 난수 배열 데이터를 생성합니다.
imshow() 메서드를 사용하여 데이터를 2D 래스터 이미지 형태로 화면에 표시합니다.
imshow() 객체를 ScalarMappable 인스턴스로 활용하여 colorbar() 메서드로 컬러바를 생성하고, 반환된 컬러바 인스턴스를 변수에 저장합니다.
show() 메서드를 호출하여 최종 그림을 화면에 출력합니다.
예제 코드
import numpy as np from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True data = np.random.randint(-1, 1, (10, 10)) im = plt.imshow(data, interpolation="nearest") cbar = plt.colorbar(im) plt.show()
실행 결과

코드 설명
위 예제에서 핵심은 cbar = plt.colorbar(im) 부분입니다. imshow()가 반환하는 객체는 ScalarMappable이며, 이를 colorbar()에 전달하면 해당 이미지에 대응하는 컬러바가 생성됩니다. 이때 반환된 cbar 객체를 통해 컬러바의 레이블 설정, 눈금 조정, 색상 범위 변경 등 세부적인 커스터마이징을 수행할 수 있습니다.