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

Matplotlib에서 플롯 표시 전 빈 눈금 레이블(tick labels) 가져오는 방법

Matplotlib에서 플롯을 화면에 표시하기 전에 빈 눈금 레이블(empty tick labels)을 가져오려면 다음 단계를 따르면 됩니다.

구현 단계

  • 데이터 포인트로 이루어진 리스트를 생성합니다.
  • subplot() 메서드를 사용하여 현재 figure에 서브플롯을 추가합니다.
  • set_xticks() 메서드와 set_xticklabels() 메서드를 사용하여 눈금(ticks)과 눈금 레이블(ticklabels)을 설정합니다.
  • 빈 눈금 레이블을 가져오려면 get_xticklabels(which='minor')를 사용합니다.
  • 결과를 화면에 표시하려면 show() 메서드를 사용합니다.

예제 코드

from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
x = [1, 2, 3, 4]
ax1 = plt.subplot()
ax1.set_xticks(x)
ax1.set_xticklabels(["one", "two", "three", "four"])
print("Empty tick labels: ", ax1.get_xticklabels(which='minor'))
plt.show()

코드 설명

위 코드에서는 먼저 figure 크기를 7.00 x 3.50으로 설정하고 자동 레이아웃 조정을 활성화합니다. 그다음 x = [1, 2, 3, 4]라는 데이터 리스트를 만들고, subplot()으로 축 객체(ax1)를 생성합니다.

set_xticks(x)로 주 눈금(major ticks) 위치를 지정한 후, set_xticklabels()를 통해 각 눈금 위치에 "one", "two", "three", "four"라는 문자열 레이블을 할당합니다.

핵심은 get_xticklabels(which='minor') 호출 부분입니다. 여기서 which='minor' 옵션은 보조 눈금(minor ticks)의 레이블을 요청하는 것인데, 보조 눈금에는 별도의 레이블이 설정되지 않았기 때문에 빈(비어 있는) 눈금 레이블 목록이 반환됩니다. 이 결과가 콘솔에 출력되며, 마지막으로 plt.show()를 통해 설정된 플롯이 화면에 나타납니다.

출력 결과

코드를 실행하면 콘솔에 다음과 같이 보조 눈금의 빈 레이블 목록이 출력되고, x축에 "one"부터 "four"까지의 레이블이 표시된 플롯 창이 열립니다.

Empty tick labels:  [<a.Text object at 0x...>, <a.Text object at 0x...>, ...]

반환되는 각 Text 객체는 실제로 아무 텍스트도 담고 있지 않은 빈 레이블이므로, 필요하다면 [label.get_text() for label in ax1.get_xticklabels(which='minor')]처럼 get_text()를 활용해 각 레이블의 내용을 확인할 수 있습니다.