Matplotlib-以对数标度标出绘图的方向

时间:2019-06-16 08:01:06

标签: python matplotlib

我想在版面内绘制刻度线标记。但是,由于更新了Python,这些标记被绘制在外部...我试图在脚本中添加“ ax.yaxis.set_tick_params(direction ='in')“。它仅适用于主要价值。

fig, ax = plt.subplots()
plt.loglog(testI[:],a[:],'b+',linewidth=2,label='a');

plt.loglog(testI[:],b[:],'y+',linewidth=2,label='b');

plt.xlim(6,45)
plt.ylim(10**(-7),19**(-1))

ax.yaxis.set_tick_params(direction = 'in')
ax.xaxis.set_tick_params(direction = 'in')

plt.show()

enter image description here

1 个答案:

答案 0 :(得分:1)

set_tick_params方法采用默认为which的关键字参数'major'。您想传递'both'来同时包含次要的滴答声。

示例:

from matplotlib import pyplot
(figure, axes) = pyplot.subplots()
axes.loglog([], [])
axes.set_xlim(1,100)
axes.set_ylim(1,100)
axes.xaxis.set_tick_params(direction='in', which='both')
axes.yaxis.set_tick_params(direction='in', which='both')
pyplot.show()

在该示例中,您还可以使用axes.tick_params在一次调用中配置两个轴。