0
我想分享一個imshow
這是方形的x軸和克拉西克情節:對齊插曲用彩條
- 的imshow必須是方形
- 用彩條
- 情節波紋管應該共享相同的軸(或至少看起來像對齊imshow)
我花了兩天時間,現在我瘋了。有人知道如何對齊它們嗎?
用於產生圖像的代碼是波紋管。
def myplot(Nbin=20):
X = np.random.rand(1000)
Y = np.random.rand(1000)
h2, yh2, xh2 = np.histogram2d(Y, X, bins=[Nbin,Nbin])
h1, xh1 = np.histogram(X, bins=Nbin)
######################################
######################################
fig = plt.figure()
gs = gridspec.GridSpec(3, 2)
######################################
######################################
ax1 = plt.subplot(gs[:-1,:])
im = plt.imshow(h2, interpolation='nearest', origin='lower',
extent=[xh2[0],xh2[-1],yh2[0],yh2[-1]])
cb = plt.colorbar(im, ax=ax1)
plt.xlim(xh1[0], xh1[-1])
plt.ylim(xh1[0], xh1[-1])
ax1.tick_params(axis='x', which='both', bottom='on', top='on', labelbottom='off')
######################################
######################################
ax2 = plt.subplot(gs[-1,:])
plt.plot(xh1[:-1] + np.diff(xh1)/2., h1)
plt.xlim(xh1[0], xh1[-1])
cm = plt.cm.Blues
cb2 = plt.colorbar(ax=ax2)
ax2.tick_params(axis='x', which='both', bottom='on', top='on', labelbottom='on')
######################################
######################################
fig.tight_layout()
fig.subplots_adjust(hspace=0.05)
cb2.ax.set_visible(False)