¿Cómo puedo convertir las marcas menores solo en el eje y en una gráfica lineal frente a lineal?
Cuando uso la función minor_ticks_on
para activar las minor_ticks_on
menores, aparecen en los ejes x e y.
No importa, lo descubrí.
ax.tick_params(axis='x', which='minor', bottom=False)
Aquí hay otra forma que encontré en la documentación de matplotlib :
import numpy as np from matplotlib import pyplot as plt from matplotlib.ticker import MultipleLocator a = np.arange(100) ml = MultipleLocator(5) plt.plot(a) plt.axes().yaxis.set_minor_locator(ml) plt.show()
Esto colocará marcas menores solo en el eje y, ya que las marcas menores están desactivadas de forma predeterminada.
Para establecer marcas menores en ubicaciones personalizadas:
ax.set_xticks([0, 10, 20, 30], minor=True)
Además, si solo desea marcas menores en el eje y real, en lugar de en los lados izquierdo y derecho de la gráfica, puede seguir los plt.axes().yaxis.set_minor_locator(ml)
con plt.axes().yaxis.set_tick_params(which='minor', right = 'off')
, así:
import numpy as np from matplotlib import pyplot as plt from matplotlib.ticker import MultipleLocator a = np.arange(100) ml = MultipleLocator(5) plt.plot(a) plt.axes().yaxis.set_minor_locator(ml) plt.axes().yaxis.set_tick_params(which='minor', right = 'off') plt.show()