3
我有以下的代碼,提出了四個次要情節的一個人物:Python的次要情節留出空間,共同軸標籤
f = figure(figsize=(7,7))
f.add_axes([0.2,0.175,0.75,0.75])
f.subplots_adjust(left=0.15)
f.clf()
ax = f.add_subplot(111)
ax1 = f.add_subplot(221)
ax2 = f.add_subplot(222)
ax3 = f.add_subplot(223)
ax4 = f.add_subplot(224)
ax.xaxis.set_major_formatter(NullFormatter())
ax.yaxis.set_major_formatter(NullFormatter())
ax2.xaxis.set_major_formatter(NullFormatter())
ax2.yaxis.set_major_formatter(NullFormatter())
ax1.xaxis.set_major_formatter(NullFormatter())
ax4.yaxis.set_major_formatter(NullFormatter())
f.subplots_adjust(wspace=0,hspace=0)
ax1.plot(tbins[0:24], mean_yszth1, color='r', label='mean', marker='.', lw=3)
ax2.plot(tbins[0:24], mean_ysz1, color='r', label='mean', marker='.', lw=3)
ax3.plot(tbins[0:24], mean_yszth2, color='r', label='mean', marker='.', lw=3)
ax4.plot(tbins[0:24], mean_ysz2, color='r', label='mean', marker='.', lw=3)
ax1.set_xlim(0,12)
ax1.set_ylim(-0.5,0.5)
ax2.set_xlim(0,12)
ax2.set_ylim(-0.5,0.5)
ax3.set_xlim(0,12)
ax3.set_ylim(-0.5,0.5)
ax4.set_xlim(0,12)
ax4.set_ylim(-0.5,0.5)
ax.set_xlabel(r"$\mathrm{Time\ since\ last\ merger\ (Gyr)}$")
ax.set_ylabel(r"$\mathrm{\Delta Y_{SZ}/Y_{SZ}}$")
結果看起來是這樣的:
正如你所看到的,軸標籤與刻度重疊。我想將公共軸標籤從軸稍微移開。我無法弄清楚如何最好地做到這一點。的set_ylabel
和set_xlabel
方法
這是我做過什麼:'ax.set_ylabel(ylabel,labelpad = 10 )'。但是我收到一個錯誤,提示'Unknown property labelpad'。也許我的Python版本太舊了? – mcglashan
你正在使用哪個版本?它適用於我在mpl vs 1.2.0(windows 7 64bit)上的圖形設置。但我認爲這個參數也可以在以前的版本中工作(至少mpl 0.99.1) – joaquin
它說頂部是Python 2.5.4。我還在錯誤信息中找到了這一行:'set_xlabel(self,xlabel,fontdict,** kwargs)'中的'/scisoft/lib/python2.5/site-packages/matplotlib/axes.pyc'。看起來在我使用的版本中沒有標籤板。 – mcglashan