带有图例和错误栏的奇怪matplotlib zorder行为

带有图例和错误栏的奇怪matplotlib zorder行为,第1张

带有图例和错误栏的奇怪matplotlib zorder行为

根据您发布的代码,创建的图是正确的。 最低 的对象

zorder
放在底部,而 最高
的对象
zorder
放在顶部。您链接到的zorder问题已在matplotlib版本1.2.1中修复,因此,如果可能,应更新安装。

在您的第一个子图中,误差线被绘制在散点上,因为用

errorbar
调用了
zorder=2
,而
scatter
zorder=1
-调用了,这意味着误差线将覆盖散点。

在你的第二个插曲,你叫

errorbar
zorder=99
scatter
zorder=100
plot
zorder=101
-这意味着errorbars将被放置在散点和线下两种。

之所以

legend
在第一个子图中的行顶部显示它,而在第二个子图中的同一行顶部显示它,是因为您没有显式设置图例objecta
zorder
值,这意味着它将使用它的默认值(我相信是5)。要更改图例的zorder,只需使用
P.legend(loc="center").set_zorder(102)
102是所需的zorder值。

因此,为了产生所需的输出,必须相应地设置

zorder
参数。由于您尚未在问题中描述 所需的
输出,因此我很难“更正”您的代码,因为我不知道您希望以什么顺序绘制对象。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5632436.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存