1

给定以下绘制椭圆的示例代码,如何使网格线出现在其他所有内容的后面?

#!/usr/bin/python3
from pylab import *
import matplotlib.pyplot as plt
from matplotlib.patches import Ellipse
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_xlim(-2, 2)
ax.set_ylim(-2, 2)
grid()
ax.add_artist( Ellipse( xy = (0,0), width = 1, height = 2, angle = 0, edgecolor='b', lw=4, facecolor='green' ) )
show()

这个网站上类似问题的答案在我的情况下不起作用。你能举一个完整的工作例子吗?

4

1 回答 1

2

你需要利用这个zorder论点。进行此修改,它将起作用。

ax.add_artist( Ellipse( xy = (0,0), width = 1, height = 2, angle = 0, edgecolor='b', lw=4, facecolor='green' ,zorder=2) )

每当您绘制多个项目时,您都可以控制它们出现的顺序zorderzoder 在此处查找更多信息。

这个简单的修复使这个数字从此开始:

前面的格子

对此:

网格后面

于 2021-02-06T18:57:35.807 回答