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

Matplotlib에서 과학적 표기법의 글꼴 크기를 변경하는 방법


Matplotlib에서 축 레이블에 표시되는 과학적 표기법(scientific notation)의 글꼴 크기를 변경하려면 ticklabel_format() 메서드를 활용하면 됩니다. 아래 단계를 따라 진행해 보세요.

  • figure.figsize로 그림(figure) 크기를 설정하고, figure.autolayout을 활성화하여 서브플롯 사이와 주변의 여백을 자동으로 조정합니다.

  • x축과 y축에 사용할 데이터 값 목록을 준비합니다.

  • plot() 메서드를 사용하여 x, y 데이터 포인트를 그래프에 그립니다.

  • ticklabel_format() 메서드에 axis="x", style="sci", scilimits=(0, 0) 옵션을 지정하여 x축 눈금 레이블을 과학적 표기법으로 변환하고 글꼴 크기를 조절합니다.

  • show() 메서드를 호출하여 최종 그림을 화면에 표시합니다.

여기서 scilimits=(0, 0)은 모든 눈금 값을 지수 형태로 강제 표시하도록 설정하는 옵션이며, 이 설정이 적용되면 축 상단에 지수(exponent)가 함께 나타나고 그 글꼴 크기도 눈금 레이블 설정에 따라 달라집니다.

예제 코드

from matplotlib import pyplot as plt

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

x = [10000, 20000, 300000, 34, 1, 10000]
y = [1, 2, 0, 4, 1, 5]

plt.plot(x, y, color='red')
plt.ticklabel_format(axis="x", style="sci", scilimits=(0, 0))

plt.show()

출력 결과

Matplotlib에서 과학적 표기법의 글꼴 크기를 변경하는 방법

위 코드를 실행하면 x축의 큰 숫자들이 10의 거듭제곱 형태의 과학적 표기법으로 깔끔하게 표시되는 것을 확인할 수 있습니다. 만약 글꼴 크기를 직접 제어하고 싶다면 plt.tick_params(labelsize=14)처럼 눈금 레이블 크기를 추가로 지정하거나, matplotlib.rcParams["font.size"]를 통해 전체 기본 글꼴 크기를 조정하는 방법도 함께 사용할 수 있습니다.