最佳答案
我不得不重新排列图例中的物品,当我认为我不应该这样做的时候,我尝试:
from pylab import *
clf()
ax=gca()
ht=ax.add_patch(Rectangle((1,1),1,1,color='r',label='Top',alpha=.1))
h1=ax.bar(1,2,label='Middle')
hb=ax.add_patch(Rectangle((1,1),1,1,color='k',label='Bottom',alpha=.11))
legend()
show()
结果是屁股高过中间。我怎样才能得到正确的顺序?它不是由创造顺序决定的吗?
更新: 以下内容可用于强制执行订单。我认为这可能是最简单的方法,这似乎很尴尬。问题是什么决定了最初的顺序?
hh=[ht,h1,hb]
legend([ht,h1.patches[0],hb],[H.get_label() for H in hh])