我正在使用matplotlib饼图:https://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.pie.html。
我正在生成使用这些饼图的网络图。我在饼图的中间画了一条线来描绘两个不同的过程。我的问题是,当我在中间绘制这条线时,它将覆盖所有饼图的顶部,因此如果它们重叠,则线条将无法正确分层:
我意识到matplotlib饼图没有zorder
,但有没有办法让它模拟zorder?这样我可以使用zorder
作为该行,然后在该行顶部对饼图进行叠加以使其重叠。
答案 0 :(得分:1)
pie()
返回补丁列表。这些单独的修补程序具有zorder
属性,因此您可以循环遍历它们并调整其zorder
fig,ax = plt.subplots()
ax.set_aspect('equal')
p1,t1 = plt.pie([50,50], center=(0,0))
p2,t2 = plt.pie([1,1,1,1], center=(1.2,0)) # this pie-chart is over the first one
[p.set_zorder(-1) for p in p2] # change the z-order of the patches so that the
# 2nd pie-chart ends up below the first one