>  기사  >  백엔드 개발  >  큰 숫자에 대한 Matplotlib의 눈금 레이블에서 상대적 이동을 제거하는 방법은 무엇입니까?

큰 숫자에 대한 Matplotlib의 눈금 레이블에서 상대적 이동을 제거하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-24 06:58:30839검색

How to Eliminate Relative Shift in Matplotlib's Tick Labels for Large Numbers?

Matplotlib 축에서 상대 이동 제거

Matplotlib에서 큰 숫자에 대해 플로팅하면 눈금 레이블에 대해 상대 이동이 있는 축이 발생할 수 있습니다. 설명을 위해 다음 플롯을 고려하십시오.

plot([1000, 1001, 1002], [1, 2, 3])

이것은 다음과 같이 가로축에 눈금을 생성합니다.

0.0     0.5     1.0     1.5     2.0
+1e3

" 1e3" 레이블을 제거하고 다음 형식의 눈금 레이블을 얻으려면 "1000.0", "1001.0" 등은 다음 단계를 따르세요.

  1. gca()를 사용하여 현재 축을 가져옵니다.
  2. get_xaxis()를 사용하여 x축 축 객체를 얻습니다. .
  3. get_major_formatter()를 사용하여 주요 포맷터 객체를 검색합니다.
  4. set_useOffset(False)를 사용하여 포맷터의 useOffset 속성을 False로 설정합니다.
  5. draw()를 호출하여 업데이트합니다.

또는 최신 버전의 Matplotlib(1.4)에서는 axis.formatter.useoffset rcparam을 통해 기본 동작을 수정할 수 있습니다.

matplotlib.rcParams['axes.formatter.useoffset'] = False

다음을 적용하여 방법을 사용하면 축의 상대적 이동을 제거하고 원하는 형식의 눈금 레이블을 얻을 수 있습니다.

위 내용은 큰 숫자에 대한 Matplotlib의 눈금 레이블에서 상대적 이동을 제거하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.