f = figure()
ax1 = f.add_axes([0.1, 0.1, 0.8, 0.8], zorder=0)
ax1.patch.set_facecolor('green')
ax2 = f.add_axes([0.3, 0.2, 0.5, 0.4], zorder=1)
ax2.patch.set_facecolor('gray')
ax2.plot([0, 1], [0, 3], color='red')
ax3 = f.add_axes([0.1, 0.1, 0.8, 0.8], zorder=2)
ax3.patch.set_alpha(0)
ax3.plot([0, 1], [0, 1], color='blue')
Matplotlib: Overplot a line above another axes panel