24

'2004' と '2013' である棒グラフの最初と最後の x 軸の目盛りテキストを非表示にしようとしています。私のデータセットは 2005 年から 2012 年のものですが、Matplotlib はデフォルトでこれらを自動的に追加します。これらの目盛りを選択して非表示にするコード行を探しています。何か案は?

4

3 に答える 3

32

それがあなたの望むものではない場合は教えてください。

import sys, os
import matplotlib.pyplot as plt

path = sys.path[0]
sizes = [(12,3,), (4,3,)]
x =  range(20)


for i, size in enumerate(sizes):
    fig = plt.figure(figsize = size, dpi = 80, facecolor='white',edgecolor=None,linewidth=0.0, frameon=True, subplotpars=None)
    ax = fig.add_subplot(111)
    ax.plot(x)
    plt.ylabel ('Some label')
    plt.tight_layout()

    make_invisible = True
    if (make_invisible):
        xticks = ax.xaxis.get_major_ticks()
        xticks[0].label1.set_visible(False)
        xticks[-1].label1.set_visible(False)

plt.show()

この例では、最初と最後の X ティックを非表示にします。ただし、特別なティックのチェックを簡単に追加できます。

于 2012-11-27T11:29:56.600 に答える
2

@DmitryNazarovの回答に追加するだけで、目盛りラベルを非表示にしてグリッド線を表示したい場合に備えて、次を使用します。

ax = plt.gca()     
ax.axes.xaxis.set_ticklabels([])
ax.axes.yaxis.set_ticklabels([])
于 2013-05-26T11:58:21.653 に答える