[python] matplotlib 플롯에서 xticks를 제거 하시겠습니까?

semilogx 플롯이 있고 xticks를 제거하고 싶습니다. 나는 시도했다 :

plt.gca().set_xticks([])
plt.xticks([])
ax.set_xticks([])

그리드가 사라지지만 (주) 진드기 위치에 작은 진드기가 남아 있습니다. 그것들을 제거하는 방법?



답변

tick_params방법은 이와 같은 것들에 매우 유용합니다. 이 코드는 주 눈금과 부 눈금을 끄고 x 축에서 레이블을 제거합니다.

from matplotlib import pyplot as plt
plt.plot(range(10))
plt.tick_params(
    axis='x',          # changes apply to the x-axis
    which='both',      # both major and minor ticks are affected
    bottom=False,      # ticks along the bottom edge are off
    top=False,         # ticks along the top edge are off
    labelbottom=False) # labels along the bottom edge are off
plt.show()
plt.savefig('plot')
plt.clf()

여기에 이미지 설명을 입력하십시오


답변

OP가 요구하는 것이 아니라 모든 축 선, 눈금 및 레이블을 비활성화하는 간단한 방법은 다음과 같습니다.

plt.axis('off')


답변

또는 빈 눈금 위치를 전달하고 레이블을 다음과 같이 지정할 수 있습니다.

# for matplotlib.pyplot
# ---------------------
plt.xticks([], [])
# for axis object
# ---------------
# from Anakhand May 5 at 13:08
# for major ticks
ax.set_xticks([])
# for minor ticks
ax.set_xticks([], minor=True)


답변

matplotlib 메일 링리스트 에서 찾은 대체 솔루션은 다음과 같습니다 .

import matplotlib.pylab as plt

x = range(1000)
ax = plt.axes()
ax.semilogx(x, x)
ax.xaxis.set_ticks_position('none') 

그래프


답변

John Vinyard가 제공하는 솔루션보다 더 우수하고 간단한 솔루션이 있습니다. 사용 NullLocator:

import matplotlib.pyplot as plt

plt.plot(range(10))
plt.gca().xaxis.set_major_locator(plt.NullLocator())
plt.show()
plt.savefig('plot')

희망이 도움이됩니다.


답변

레이블을 제거하려면이 방법을 사용하십시오 (틱은 제외).

import matplotlib.pyplot as plt

plt.setp( ax.get_xticklabels(), visible=False)


답변

이 스 니펫은 xticks 만 제거하는 데 도움이 될 수 있습니다.

from matplotlib import pyplot as plt
plt.xticks([])

이 스 니펫은 xticks와 yticks를 모두 제거하는 데 도움이 될 수 있습니다.

from matplotlib import pyplot as plt
plt.xticks([]),plt.yticks([])