Matplotlib으로 그래프를 그릴 때 축의 눈금 값이 크거나 작으면 자동으로 지수 형식(과학적 표기법)으로 변경되는 경우가 있습니다. 이럴 때 ticklabel_format() 메서드에 style='plain' 옵션을 사용하면 눈금 레이블이 지수 형식으로 변환되는 것을 막을 수 있습니다.
구현 단계
plot()메서드에 두 개의 리스트를 전달하여 선 그래프를 그립니다.ticklabel_format()메서드를style='plain'옵션과 함께 호출합니다. 매개변수가 설정되지 않으면 포매터(formatter)의 해당 속성은 기존 상태로 유지됩니다.style='plain'은 과학적 표기법(지수 형식)을 비활성화합니다.plt.show()메서드를 사용하여 그래프를 화면에 출력합니다.
예제 코드
from matplotlib import pyplot as plt plt.plot([1, 2, 3, 4, 5], [11, 12, 13, 14, 15]) plt.ticklabel_format(style='plain') # 과학적 표기법 방지 plt.show()
실행 결과
위 코드를 실행하면 y축의 눈금 값이 11부터 15까지 일반 숫자 형태로 그대로 표시되며, 지수 형식(e+01 등)으로 변환되지 않는 것을 확인할 수 있습니다.
참고로 축 범위가 매우 넓거나 좁아서 지수 형식이 필요 없는 일반적인 경우라면 이 방법만으로 충분하지만, 소수점 자릿수까지 세밀하게 제어하고 싶다면 useOffset=False 옵션을 함께 추가하면 더 깔끔한 결과를 얻을 수 있습니다.