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

Matplotlib에서 범례를 가로로 나란히 표시하는 방법

Matplotlib에서 범례(legend) 항목들을 세로가 아닌 가로 방향으로 나란히 표시하고 싶다면, legend() 함수의 ncol 파라미터를 활용하면 됩니다. 아래에서 단계별로 살펴보겠습니다.

구현 단계

  • 그림(figure) 크기를 설정하고, figure.autolayout 옵션으로 서브플롯 주변의 여백(padding)을 자동 조정합니다.
  • plot() 메서드를 사용하여 각각 line1, line2, line3라는 레이블을 가진 세 개의 선을 그립니다.
  • legend() 메서드를 호출할 때 ncol 인자에 가로로 배치할 열(column)의 개수를 지정하여 범례를 배치합니다. 예를 들어 ncol=3으로 설정하면 세 개의 항목이 한 줄에 나란히 표시됩니다.
  • show() 메서드를 사용하여 최종 그림을 화면에 출력합니다.

예제 코드

from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

line1, = plt.plot([1, 2, 3], label="line1")
line2, = plt.plot([3, 2, 1], label="line2")
line3, = plt.plot([2, 3, 1], label="line3")
plt.legend(ncol=3, loc="upper right")
plt.show()

실행 결과

Matplotlib에서 범례를 가로로 나란히 표시하는 방법

추가 팁

ncol 값은 원하는 만큼 조절할 수 있습니다. 범례 항목이 많다면 ncol을 늘려 여러 줄로 균형 있게 배치할 수도 있습니다. 또한 loc 파라미터를 통해 범례 위치를 "upper left", "lower center", "best" 등 다양하게 지정할 수 있으니, 그래프 레이아웃에 맞게 조합해서 사용하면 더 깔끔한 시각화를 만들 수 있습니다.