相关疑难解决方法(0)

如何确定matplotlib图例中的项目顺序?

我不得不重新订购传奇中的物品,当时我不认为我应该这样做.我尝试:

from pylab import *
clf()
ax=gca()
ht=ax.add_patch(Rectangle((1,1),1,1,color='r',label='Top',alpha=.01))
h1=ax.bar(1,2,label='Middle')
hb=ax.add_patch(Rectangle((1,1),1,1,color='k',label='Bottom',alpha=.01))
legend()
show()
Run Code Online (Sandbox Code Playgroud)

最终以中上方为底.我怎样才能得到正确的订单?它不是由创建顺序决定的吗?

代码导致错误的图例项目顺序

更新:以下内容可用于强制执行订单.我认为这可能是最简单的方法,这看起来很尴尬.问题是什么决定了原始订单?

hh=[ht,h1,hb]
legend([ht,h1.patches[0],hb],[H.get_label() for H in hh])
Run Code Online (Sandbox Code Playgroud)

python matplotlib legend

49
推荐指数
5
解决办法
3万
查看次数

标签 统计

legend ×1

matplotlib ×1

python ×1