Lecture 축 스케일 및 틱

Views 74 • Comments 0 • Last Updated at 5 months ago Full screen  
  • Matplotlib
  • matplotlib

축 스케일 및 틱

Axes에는 x축과 y축을 나타내는 두 개(또는 세 개)의 축개체가 있습니다. 이들은 축의 눈금, 눈금 위치 지정자 및 눈금 포맷터를 제어합니다. 추가 축을 연결하여 더 많은 축 개체를 표시할 수 있다.

스케일

Matplotlib은 선형 스케일, 로그 스케일과 같은 비선형 스케일도 제공한다. 로그 스케일은 매우 많이 사용되기 때문에 loglog, semilogx, semilogy와 같은 직접적인 메서드도 있다. 다음 예제는 스케일을 수동으로 설정한다.

fig, axs = plt.subplots(1, 2, figsize=(5, 2.7), layout='constrained')
xdata = np.arange(len(data1))  # make an ordinal for this
data = 10**data1
axs[0].plot(xdata, data)

axs[1].set_yscale('log')  # 두번째 그래프의 스케일을 설정
axs[1].plot(xdata, data)

스케일은 데이터 값에서 축을 따라 간격으로 매핑을 설정합니다. 이 작업은 양방향으로 이루어지며, Matplotlib이 데이터 좌표에서 축, 그림 또는 화면 좌표로 매핑하는 방식인 변환으로 결합됩니다. 변환 튜토리얼을 참조하십시오.

눈금 위치 지정자 및 서식 지정자

각 축에는 축 객체에서 눈금 위치 표시하는 눈금 위치 지정자와 포맷터가 있다. 이는 set_xticks로 수행할 수 있다.

fig, axs = plt.subplots(2, 1, layout='constrained')
axs[0].plot(xdata, data1)
axs[0].set_title('Automatic ticks')

axs[1].plot(xdata, data1)
axs[1].set_xticks(np.arange(0, 100, 30), ['zero', '30', 'sixty', '90'])
axs[1].set_yticks([-1.5, 0, 1.5])  # note that we don't need to specify labels
axs[1].set_title('Manual ticks')

서로 다른 스케일은 서로 다른 Locator와 Formatter가 있다. 예를 들어 로그 스케일에서는 LogLocator와 LogFormatter를 사용한다. (다른 포맷터 및 로케이터와 직접 작성하는 방법에 대한 정보는 틱 로케이터 및 틱 포맷터를 참조)

날짜와 문자열 그리기

Matplotlib은 날짜 배열과 문자열 배열, 부동 소수점 숫자의 플로팅을 처리할 수 있다. 여기에는 특수한 위치 지정자와 포맷터가 사용된다.

fig, ax = plt.subplots(figsize=(5, 2.7), layout='constrained')
dates = np.arange(np.datetime64('2021-11-15'), np.datetime64('2021-12-25'),
                  np.timedelta64(1, 'h'))
data = np.cumsum(np.random.randn(len(dates)))
ax.plot(dates, data)
cdf = mpl.dates.ConciseDateFormatter(ax.xaxis.get_major_locator())
ax.xaxis.set_major_formatter(cdf)
previous article
last article
Comments
Feel free to ask a question, answer or comment, etc.