matplotlib之您如何将 matplotlib 艺术家放在背景中以在顶部覆盖绘图
tintown
阅读:51
2024-09-07 23:24:14
评论:0
我知道我缺少关于 matplotlib 如何组织图形和绘图的一些非常基本的东西,但我搜索了文档但没有结果。我已将我的问题缩小到一些简单的问题,希望能帮助我更好地理解 matplotlib。
鉴于以下代码:
x_coords = [1,2,3]
y_coords = [2,3,4]
labels = ['A','B','C']
plt.scatter(x_coords, y_coords, marker = 'o')
for l, x, y in zip(labels, x_coords, y_coords):
plt.annotate(l, xy=(x,y), xytext=(-10,5), textcoords='offset points')
circle = plt.Circle((2,3), 1.5, color='w', ec='k')
fig = plt.gcf()
fig.gca().add_artist(circle)
plt.show()
圆圈绘制在绘制点的标记和标签之间的图层上。如何控制绘制这些元素的图层?
这是用于视觉引用的绘制图像:
请您参考如下方法:
首先,circle
在您的代码中不是 Figure
,它是一个 Artist
,更具体地说是 Patch
.在 matplotlib 中,一个 Figure
是顶级Artist
其中包含其他元素,因此您的标题有点误导。
其次,您可以通过指定其 zorder
将圆圈放置在其他艺术家的下方。夸格:
circle = plt.Circle((2,3), 1.5, color='w', ec='k', zorder=0)
最低的艺人
zorder
绘制在底层,最高的绘制在顶层。
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。