我在现有的轴框内有一个子图,在子图中有一些线或填充的轮廓图。我想要做的是在现有的较大的框架中绘制一些线,这些线必须位于子图中的线/contourf的顶部。下面是一个小示例。基本上,我希望蓝线和/或绿线在红线的顶部。似乎设置zorder对属于不同子轴的线没有影响。
import matplotlib.pyplot as plt
fig = plt.figure()
plt.plot([0,2], color='blue', zorder=300)
ax0 = gca()
ax = fig.add_axes([0.3,0.3,0.3,0.3], zorder=0, axisbg='none')
ax.plot([0,1],[1,0], linewidth=40, color='red', zorder=-100)
ax0.plot([0.55,0.55],[0,2], linewidth=20, color='green', zorder=200)发布于 2014-02-17 14:53:56
我找到了一个解决方案,它可能不是完美的,但可以满足我的需求。诀窍是将大轴框设置为高zorder,并将其背景颜色设置为透明,以便可以看到背景中的小轴框,这样主框架中的线条将自然地位于小框架中线条的顶部。
import matplotlib.pyplot as plt
fig = plt.figure()
plt.plot([0,2], color='blue')
ax0 = gca()
ax0.set_zorder(100)
ax0.set_axis_bgcolor('none')
ax = fig.add_axes([0.3,0.3,0.3,0.3], zorder=0, axisbg='none')
ax.plot([0,1],[1,0], linewidth=40, color='red')
ax0.plot([0.55,0.55],[0,2], linewidth=20, color='green')https://stackoverflow.com/questions/21822203
复制相似问题