我正在做一個多面板情節使用gridspec,但我有幾個問題。我希望每一行共享一個不同的y軸,並且每列都共享一個不同的x軸。或者換句話說,每行共享x和每列共享y。我也想爲每個這些軸添加一個標籤。這裏是(我想減去軸標籤)就是我與取得的代碼一起談論一個例子:但是因爲我使用subplot2grid我不能確切地使用這個實現 sample axis sharing http://matplotlib.org/_images/subplots_demo_04.png蟒蛇gridspec,麻煩分享x軸和y軸
# row and column sharing
f, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, sharex='col', sharey='row')
ax1.plot(x, y)
ax1.set_title('Sharing x per column, y per row')
ax2.scatter(x, y)
ax3.scatter(x, 2 * y ** 2 - 1, color='r')
ax4.plot(x, 2 * y ** 2 - 1, color='r')
因爲我需要選擇每個地塊的具體位置和尺寸。我試過在subplot2grid調用中使用sharex = ax1和sharey = ax1這個東西無濟於事。這裏是我的代碼的相關部分:
ax1 = plt.subplot2grid((8,8), (2,0), colspan=2, rowspan=2)
ax2 = plt.subplot2grid((8,8), (4,0), colspan=2, rowspan=2)
ax3 = plt.subplot2grid((8,8), (6,0), colspan=2, rowspan=2)
ax4 = plt.subplot2grid((8,8), (2,2), colspan=2, rowspan=2)
ax5 = plt.subplot2grid((8,8), (4,2), colspan=2, rowspan=2)
ax6 = plt.subplot2grid((8,8), (2,4), colspan=2, rowspan=2)
ax7 = plt.subplot2grid((8,8), (1,0), colspan=2, rowspan=1)
ax8 = plt.subplot2grid((8,8), (1,2), colspan=2, rowspan=1)
ax9 = plt.subplot2grid((8,8), (1,4), colspan=2, rowspan=1)
ax10 = plt.subplot2grid((8,8), (2,6), colspan=1, rowspan=2)
在ax2或其他任何調用的定義中使用(例如)'sharex = ax1'和/或'sharey = ax1'應該可以工作(適用於我)。 – Ajean 2014-09-13 01:09:50