Je peux enlever les tiques avec
ax.set_xticks([])
ax.set_yticks([])
mais cela supprime également les étiquettes. De toute façon, je peux tracer les étiquettes des tiques, mais pas les tiques et l'épine
Vous pouvez définir la longueur de tick à 0 avec tick_params
( http://matplotlib.org/api/axes_api.html#matplotlib.axes.Axes.tick_params ):
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot([1],[1])
ax.tick_params(axis=u'both', which=u'both',length=0)
plt.show()
Merci pour vos réponses @ julien-spronck et @cmidi.
En note, je devais utiliser les deux méthodes pour que cela fonctionne:
import numpy as np
import matplotlib.pyplot as plt
fig, (ax1, ax2, ax3) = plt.subplots(1, 3, figsize=(11, 3))
data = np.random.random((4, 4))
ax1.imshow(data)
ax1.set(title='Bad', ylabel='$A_y$')
# plt.setp(ax1.get_xticklabels(), visible=False)
# plt.setp(ax1.get_yticklabels(), visible=False)
ax1.tick_params(axis='both', which='both', length=0)
ax2.imshow(data)
ax2.set(title='Somewhat OK', ylabel='$B_y$')
plt.setp(ax2.get_xticklabels(), visible=False)
plt.setp(ax2.get_yticklabels(), visible=False)
# ax2.tick_params(axis='both', which='both', length=0)
ax3.imshow(data)
ax3.set(title='Nice', ylabel='$C_y$')
plt.setp(ax3.get_xticklabels(), visible=False)
plt.setp(ax3.get_yticklabels(), visible=False)
ax3.tick_params(axis='both', which='both', length=0)
plt.show()
matplotlib.pyplot.setp(*args, **kwargs)
est utilisé pour définir les propriétés d'un objet d'artiste. Vous pouvez utiliser ceci en plus de get_xticklabes()
pour le rendre invisible.
quelque chose sur les lignes de ce qui suit
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(2,1,1)
ax.set_xlabel("X-Label",fontsize=10,color='red')
plt.setp(ax.get_xticklabels(),visible=False)
Ci-dessous se trouve la page de référence http://matplotlib.org/api/pyplot_api.html
Alors que je suivais un cours sur Python, c'était une question.
Vous trouverez ci-dessous la solution proposée, que je pense plus lisible et intuitive.
ax.tick_params(top='off', bottom='off', left='off', right='off', labelleft='on', labelbottom='on')
Vous pouvez définir les propriétés yaxis
et xaxis
set_ticks_position
afin qu’elles ne s'affichent que sur les côtés gauche et inférieur, respectivement.
ax.yaxis.set_ticks_position('left')
ax.xaxis.set_ticks_position('bottom')
En outre, vous pouvez également masquer les épines en définissant la propriété set_visible
de l’épine spécifique sur False
.
axes[i].spines['right'].set_visible(False)
axes[i].spines['top'].set_visible(False)