Matplotlib:figlegend只打印第一个字母

时间:2012-05-11 19:43:22

标签: python matplotlib

我尝试用一​​行打印一个figlegend,但我只得到第一个字母。我有以下脚本来制作剧情:

from pylab import *
k = plot((0, 1),(1, 1))
figlegend((k),('Limit'),loc='lower center')
savefig('test.pdf')

输出为:output

我做错了什么? (或者它是一个错误?)

2 个答案:

答案 0 :(得分:20)

我还没有弄清楚matplotlib中是出于bug还是故意(出于某种原因),但为了获得完整的图例标签,您需要在标签列表中留下一个逗号:

figlegend((k),('Limit',),loc='lower center')

更改该行和您的代码:

from pylab import *
k = plot((0, 1),(1, 1))
figlegend((k),('Limit',),loc='lower center')
savefig('test.pdf')

产生数字:

full legend label

答案 1 :(得分:1)

您的问题的答案如下。

对于图例的名称,您必须将其括在方括号中,如下所示:

figlegend((k),[('Limit')],loc='lower center')

如您所见,图例名称“limit”用方括号括起来,然后将显示全名。

Here would be the full code:
from pylab import *
k = plot((0, 1),(1, 1))
figlegend((k),[('Limit')],loc='lower center')
savefig('test.pdf')