14

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

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

输出是:输出

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

4

2 回答 2

26

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

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

更改该行和您的代码:

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

产生图形:

完整的图例标签

或者,可以使用[]来实现相同的结果:

figlegend((k),(['Limit']),loc='lower center')
于 2012-05-11T19:52:26.757 回答
2

您的问题的答案如下。

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

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')
于 2021-02-25T16:39:34.077 回答