Tengo un diagrama de semilogx y me gustaría eliminar los xticks. Lo intenté:
plt.gca().set_xticks([])
plt.xticks([])
ax.set_xticks([])
La cuadrícula desaparece (está bien), pero quedan pequeñas marcas (en el lugar de las marcas principales). ¿Cómo eliminarlos?
python
matplotlib
plot
Vincent
fuente
fuente
ax.set_xticks([], [])
y está resuelto ...Respuestas:
El
tick_params
método es muy útil para cosas como esta. Este código desactiva los ticks mayores y menores y elimina las etiquetas del eje x.fuente
plt.tick_params(axis='both', which='both', bottom='off', top='off', labelbottom='off', right='off', left='off', labelleft='off')
axes
tiene el mismotick_params
método.matplotlib
, debe reemplazar'on'
conTrue
y'off'
conFalse
.No es exactamente lo que pedía el OP, pero una forma simple de deshabilitar todas las líneas, marcas y etiquetas de los ejes es simplemente llamar:
fuente
ax.axis('off')
en una instancia de ejes existente.Alternativamente, puede pasar una posición de marca vacía y etiquetar como
fuente
ax
, entonces podría usar:ax.set_xticks([], [])
ax.set_xticks([])
para ticks mayores,ax.set_xticks([], minor=True)
para ticks menores. Equivalentes conpyplot
areplt.xticks([])
yplt.xticks([], minor=True)
.Aquí hay una solución alternativa que encontré en la lista de correo matplotlib :
fuente
Hay una solución mejor y más simple que la que da John Vinyard. Uso
NullLocator
:Espero que ayude.
fuente
axins.xaxis.set_major_locator(plt.NullLocator())
, dondeaxins
es el objeto devuelto poraxins = zoomed_inset_axes()
(función importada dempl_toolkits.axes_grid1.inset_locator
).Pruebe esto para eliminar las etiquetas (pero no las marcas):
ejemplo
fuente
setp
está en modo pylab, no se puede usar contra ejes individualesEste fragmento podría ayudar a eliminar solo los xticks.
Este fragmento podría ayudar a eliminar los xticks y los yticks de ambos.
fuente
fuente
ax.tick_params()
off
yon
está en desuso.MatplotlibDeprecationWarning: Passing one of 'on', 'true', 'off', 'false' as a boolean is deprecated; use an actual boolean (True/False) instead.
Aquellos de ustedes que buscan un comando breve para desactivar todos los ticks y etiquetas deberían estar bien con
que permite escribir
bool
para los parámetros respectivos desde la versión matplotlib> = 2.1.1Para la configuración de marca personalizada, los documentos son útiles:
https://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.tick_params.html
fuente