首页 > 解决方案 > MatplotLib 仅在内部的顶部和右侧轴上移动刻度

问题描述

我想将我的情节上的刻度线移到内部,但只在顶部和右侧轴上。这是我正在使用的代码

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

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

这是使用我的代码的外观:

我的代码看起来如何

这是我想要的轴样式的示例:

其他图表

标签: pythonmatplotlibplotaxisxticks

解决方案


我想出了一个解决方案,可能不是最好的方法,但我使用了twinxtwiny

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 的初始使用。

解决方案


推荐阅读