私は棒グラフの最初と最後のx軸の目盛りテキスト、つまり '2004'と '2013'を非表示にしようとしています。データセットが2005年から2012年のものであっても、Matplotlibはこれらをデフォルトで自動的に追加します。そのため、棒グラフに2004と2013を含めたくありません。これらの目盛りを選択して非表示にするコード行を探しています。何か案は?
それがあなたが望むものではないかどうか教えてください。
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ティックを非表示にします。ただし、特別な目盛りのチェックを簡単に追加できます。
@DmitryNazarovの答えに追加するだけで、目盛ラベルを非表示にして、グリッド線を表示したままにしたい場合は、次を使用します:
ax = plt.gca()
ax.axes.xaxis.set_ticklabels([])
ax.axes.yaxis.set_ticklabels([])