MatplotLib перемещает галочки только по верхней и правой оси внутри

Я хотел бы переместить галочки на моем графике внутрь, но только по верхней и правой оси. Это код, который я использую

ax.tick_params(top=True, right=True, which='both')

ax.xaxis.set_minor_locator(AutoMinorLocator(2))
ax.yaxis.set_minor_locator(AutoMinorLocator(2))

Вот как это выглядит с использованием моего кода:

Как это выглядит с моим кодом

Это пример стиля оси, который я хочу:

Другой график


person Connor Monaghan    schedule 03.05.2020    source источник


Ответы (1)


Я нашел решение, возможно, не лучший способ сделать это, но я использовал twinx и twiny.

ax.xaxis.set_minor_locator(AutoMinorLocator(2))
ax.yaxis.set_minor_locator(AutoMinorLocator(2))

ax2 = plt.twinx()
ax2.yaxis.set_minor_locator(AutoMinorLocator(2))
ax2.tick_params(which='both', direction='in')
ax2.yaxis.set_ticklabels([])

ax3 = plt.twiny()
ax3.xaxis.set_ticklabels([])
ax3.xaxis.set_minor_locator(AutoMinorLocator(2))
ax3.tick_params(which='both', direction='in')

Я заменил приведенный выше код на этот, удалив первоначальное использование tick_params.

Решение

person Connor Monaghan    schedule 03.05.2020