matplotlib에서 x 축 변경
Matlab을 사용하여 여기에서 만들었습니다.
matplotlib를 사용하여 x 축은 100000, 200000, 300000과 같은 큰 숫자를 그립니다. 100000, 200000, 300000임을 나타냅니다. 내기 위해 1, 2, 3 및 10 ^ 5와 같은 것을 갖고 싶습니다.
matplotlib에서 규모를 만드는 간단한 방법이 있습니까?
용도 :matplotlib.pyplot.ticklabel_format
import matplotlib.pyplot as plt
...
plt.ticklabel_format(style='sci', axis='x', scilimits=(0,0))
이 과학적 표기법 (예 a x 10^b
:)을 x 축 눈금에 적용합니다.
이것은 귀하의 질문 본문에있는 질문 중 하나에 대한 원래 질문에 대한 답변이 아닙니다.
내 이름이 이상해 보이지 않도록 약간의 서문 :
import matplotlib
from matplotlib import rc
from matplotlib.figure import Figure
ax = self.figure.add_subplot( 111 )
앞서 언급했듯이 ticklabel_format을 사용하여 matplotlib가 크거나 작은 값에 과학적 표기법을 사용하는 것이 좋습니다.
ax.ticklabel_format(style='sci',scilimits=(-3,4),axis='both')
rcParams의 플래그 (matplotlib import rcParams에서)를 사용하거나 직접 설정하여 표시되는 방식에 영향을 줄 수 있습니다. 나는 '1e'와 'x10 ^'사이의 과학적 표기법을 다음보다 더 우아한 방식으로 바꾸는 방법을 찾지 못합니다.
ax.xaxis.major.formatter._useMathText = True
이것은 당신에게 더 많은 Matlab-esc를 제공하고 더 나은 모습을 보여줄 것입니다. 다음이 똑같이해야 생각합니다.
rc('text', usetex=True)
스칼라 포맷터 지원은 지수를 수집합니다. 문서는 다음과 가능합니다.
class matplotlib.ticker.ScalarFormatter (useOffset = True, useMathText = False, useLocale = None) 기준 : matplotlib.ticker.Formatter
틱 위치는 평범한 오래된 숫자입니다. useOffset == True이고 데이터 범위가 데이터 평균보다 훨씬 작 으면 으면 눈금 레이블이 의미가 어느 정도 결정됩니다. 과학적 표기법은 데이터 <10 ^ -n 또는 데이터> = 10 ^ m에 사용됩니다. 여기서 n 및 m은 set_powerlimits ((n, m))를 사용하여 전력 한계입니다. 이들에 대한 언급은 axes.formatter.limits rc 변수에 의해 제어됩니다.
당신의 기술은 다음과 달라집니다.
xfmt = ScalarFormatter()
xfmt.set_powerlimits((-3,3)) # Or whatever your limits are . . .
{{ Make your plot }}
gca().xaxis.set_major_formatter(xfmt)
형식으로 지수를 얻으 x10^5
려면 ScalarFormatter를 useMathText=True
.
다음을 사용할 수도 있습니다.
xfmt.set_useOffset(10000)
다음과 같은 결과를 얻으려면 :
나는 간단한 해결을 찾음
pylab.ticklabel_format(axis='y',style='sci',scilimits=(1,4))
참고 URL : https://stackoverflow.com/questions/11577665/change-x-axes-scale-in-matplotlib
'ProgramingTip' 카테고리의 다른 글
HTML5에서로드시 무한 반복 재생 재생 (0) | 2020.10.07 |
---|---|
$ index를 바인딩과 함께 사용하는 knockout.js (0) | 2020.10.07 |
콘솔 오류. (0) | 2020.10.07 |
DIV에 키보드 포커스를주고 여기에 키보드 이벤트 처리기를 연결해야합니까? (0) | 2020.10.07 |
HTML 이메일 작성시 모범 사례 및 고려 사항 (0) | 2020.10.07 |