matplotlib으로 여러 개의 그래프를 그리다 보면 기본 색상 순환(color cycle) 때문에 선 색상이 반복되어 구분이 어려운 경우가 있습니다. 이 문제를 해결하려면 plot() 메서드의 color 속성에 고유한 색상 값을 직접 지정하면 됩니다.
해결 단계
- 그림(figure) 크기를 설정하고 서브플롯 주변과 사이의 여백(padding)을 조정합니다.
- numpy를 사용하여 x, y 데이터 포인트를 생성합니다.
- plot() 메서드로 x, y 데이터 포인트를 그립니다.
- plot() 메서드의 color 속성에 고유한 16진수(hexadecimal) 색상 코드를 지정합니다. 예를 들어 color="#980ab5"처럼 입력하면 해당 그래프가 고유한 색상으로 표시됩니다. 물론 color="green"처럼 원하는 특정 색상 이름을 사용할 수도 있습니다.
- show() 메서드를 호출하여 그래프를 화면에 표시합니다.
예제 코드
import numpy as np from matplotlib import pyplot as plt # 그림 크기 설정 plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True # x, y 데이터 포인트 생성 x = np.linspace(1, 100, 1000) y = np.log(x) # color 속성에 고유한 색상을 지정하여 그래프 그리기 plt.plot(x, y, color="#980ab5", lw=3) # 그래프 표시 plt.show()
실행 결과
위 코드를 실행하면 다음과 같이 지정한 고유한 색상(#980ab5)의 그래프가 출력됩니다.

반면, color 속성 없이 동일한 코드를 실행하면 그래프는 matplotlib의 기본 색상(파란색 계열)으로 자동 지정됩니다.

추가 팁
여러 개의 선을 한 번에 다른 색상으로 표현하고 싶다면, 각 plot() 호출마다 서로 다른 16진수 색상 코드를 지정하거나, RGB 튜플 형태(예: color=(0.1, 0.5, 0.8))로 색상을 전달할 수도 있습니다. 이렇게 하면 기본 색상 순환에 의존하지 않고 각 선을 명확하게 구분할 수 있습니다.