2010-09-08 77 views
1

当使用Matplotlib(Pylab)进行渲染具有与AriaL相同的指标的文本(例如,Arial本身或Liberation Sans)输出看起来不错时 - 例如,图例框的宽度是正确的。Matplotlib估计文本宽度的错误

但是,当使用其他字体时,似乎Matplotlib错误地估计了文本的预期大小。例如,对于Bitstream Vera Sans,文本似乎比Matplotlib预期的要宽:例如,文本的右侧有时与图例框的右侧重叠。

同样,当使用use_latex让Latex呈现输出时,文本看起来比预期更窄,并且文本的右侧和图例框之间还有一个额外的空间。

这是Matplotlib中的错误吗?或者我期望使用Arial指标的字体?

+1

这将是有用的,如果你发布你的例子.. – Amro 2010-09-09 22:07:38

回答

0

我在linux(ubuntu 10.04)上运行matplotlib版本0.99.1.1并且无法重现问题。这是我正在使用的代码。

import pylab 
a = [1,2,1] 
label = "This long label isn't too long." 
for family in ['Arial', 'Liberation Sans', 'Bitstream Vera Sans']: 
    pylab.figure() 
    pylab.plot(a) 
    pylab.legend([label], prop={'family':family}) 
pylab.show()