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

파이썬 Matplotlib에서 숫자가 지수 형식으로 표시되는 것을 방지하는 방법

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 옵션을 함께 추가하면 더 깔끔한 결과를 얻을 수 있습니다.