it-swarm.com.de

Wie verstecke ich das Ticks-Label in Python, aber halte die Ticks an Ort und Stelle?

Ich möchte das Häkchenetikett in einer von mir erstellten Zeichnung ausblenden, aber dieses Häkchen selbst beibehalten (die kleinen Markierungen auf der Achse). Wenn ich versuche zu verwenden, was ich hier gefunden habe, wird zum Beispiel der gesamte Haken entfernt und nicht nur die Beschriftungen. Wie kann ich dann nur die Etiketten entfernen? 

28
Yotam

Legen Sie als Häkchenbeschriftung kein leeres Array fest, sondern eine Liste leerer Zeichenfolgen. Im folgenden Beispiel habe ich die xtick-Labels durch leere Zeichenfolgen ersetzt, wobei die y-Achse unberührt blieb. Von hier aus können Sie bestimmte Etiketten selektiv aufbewahren, wenn Sie dies wünschen.

import pylab as plt

fig, ax = plt.subplots()
ax.plot([1,2,3],[4,5,6])

labels = [item.get_text() for item in ax.get_xticklabels()]

empty_string_labels = ['']*len(labels)
ax.set_xticklabels(empty_string_labels)

plt.show()

enter image description here

Dieser Code wird von einer vorherigen Antwort angepasst.

14
Hooked

Hier ist eine etwas einfachere Antwort mit ax.tick_params

import matplotlib.pylab as plt

fig, ax = plt.subplots()
plt.plot([1,2,3],[4,5,6])

ax.tick_params(labelbottom=False)    

plt.show()
74
divenex

Ich habe keine Antwort von divenex gefunden, um für mich zu arbeiten. Diese Antwort erzeugt Ticks, ohne dass eine automatische Beschriftung ausgelöst wird. Daher ist die Verwendung von "labelbottom = False" nicht erforderlich.

wenn die unteren und linken Ticks bereits vorhanden sind: 

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
plt.plot([1,2,3],[4,5,6])

ax.tick_params(right= True,top= True)

wenn noch keine Ticks vorhanden sind:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
plt.plot([1,2,3],[4,5,6])

ax.tick_params(right= True,top= True,left= True, bottom= True)
0
jbplasma