python / matplotlib:强制滴答声,部分缺少自动收报机

时间:2016-10-17 13:48:27

标签: python matplotlib ticker

当用plt.axis('auto')绘制我的图形时,'自然'x-ticks以频率500写入,

enter image description here

希望频率为200,我使用过:

    import matplotlib.ticker as ticker

    ticks_loc = ticker.MultipleLocator(base=200)

    fig = plt.figure('Cutlines x-axis')
    ax = fig.add_subplot(111)
    ...
    plt.axis('equal')
    ax.xaxis.set_major_locator(ticks_loc)
    ax.yaxis.set_major_locator(ticks_loc)
    plt.grid()

给出,

enter image description here

好奇

  1. 未表示所有刻度(缺少-1000,-800,-600)
  2. plt.show()savefig不同(plt.show()'只有'刻度-1000和-800缺失,而不是-600)。
  3. 我尝试过减小字体大小(使用非常小的字体)和/或垂直书写 - >没有效果:总是丢失相同的刻度。

    有没有办法让所有刻度线都可见(在水平模式下)?

1 个答案:

答案 0 :(得分:1)

为什么不使用xticks代替ticker

fig = plt.figure('Cutlines x-axis')
ax = fig.add_subplot(111)
...
xlim = ax.get_xlim()
plt.xticks(np.arange(xlim[0], xlim[1]+200, 200))