Odpowiedzi:
Ta tick_paramsmetoda jest bardzo przydatna w przypadku takich rzeczy. Ten kod wyłącza znaczniki główne i drobne i usuwa etykiety z osi 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()

plt.tick_params(axis='both', which='both', bottom='off', top='off', labelbottom='off', right='off', left='off', labelleft='off')
axesma tę samą tick_paramsmetodę.
matplotlib, należy wymienić 'on'z Truei 'off'z False.
Nie do końca to, o co prosił PO, ale prostym sposobem na wyłączenie wszystkich linii osi, znaczników i etykiet jest po prostu wywołanie:
plt.axis('off')
ax.axis('off')na istniejącej instancji osi.
Alternatywnie możesz podać pustą pozycję zaznaczenia i oznaczyć jako
# 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)
ax, możesz użyć:ax.set_xticks([], [])
ax.set_xticks([])dla dużych kleszczy, ax.set_xticks([], minor=True)dla małych kleszczy. Odpowiednikami z pyplotsą plt.xticks([])i plt.xticks([], minor=True).
Oto alternatywne rozwiązanie, które znalazłem na liście mailingowej matplotlib :
import matplotlib.pylab as plt
x = range(1000)
ax = plt.axes()
ax.semilogx(x, x)
ax.xaxis.set_ticks_position('none')

Jest lepsze i prostsze rozwiązanie niż to podane przez Johna Vinyarda. Użyj NullLocator:
import matplotlib.pyplot as plt
plt.plot(range(10))
plt.gca().xaxis.set_major_locator(plt.NullLocator())
plt.show()
plt.savefig('plot')
Mam nadzieję, że to pomaga.
axins.xaxis.set_major_locator(plt.NullLocator()), gdzie axinsjest zwracany obiekt axins = zoomed_inset_axes()(funkcja importowana z mpl_toolkits.axes_grid1.inset_locator).
Spróbuj to usunąć etykiety (ale nie kleszcze):
import matplotlib.pyplot as plt
plt.setp( ax.get_xticklabels(), visible=False)
setpjest w trybie pylab, nie można go używać w stosunku do poszczególnych osi
Ten fragment kodu może pomóc w usunięciu tylko xticks.
from matplotlib import pyplot as plt
plt.xticks([])
Ten fragment kodu może pomóc usunąć xticks i yticks oba.
from matplotlib import pyplot as plt
plt.xticks([]),plt.yticks([])
# remove all the ticks (both axes), and tick labels on the Y axis
plt.tick_params(top='off', bottom='off', left='off', right='off', labelleft='off', labelbottom='on')
ax.tick_params()
offi onjest przestarzałe. MatplotlibDeprecationWarning: Passing one of 'on', 'true', 'off', 'false' as a boolean is deprecated; use an actual boolean (True/False) instead.
Ci z was, którzy szukają krótkiego polecenia, aby wyłączyć wszystkie tiki i etykiety, powinni być w porządku
plt.tick_params(top=False, bottom=False, left=False, right=False, labelleft=False, labelbottom=False)
co pozwala na wpisanie bool odpowiednich parametrów od wersji matplotlib> = 2.1.1
W przypadku niestandardowych ustawień zaznaczania pomocne są dokumenty:
https://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.tick_params.html
ax.set_xticks([], [])i zostało rozwiązane ...