Ошибка при сохранении фигуры в формате eps в Python Matplotlib

Я пытаюсь сохранить фигуру в формате eps, используя следующий код:

plt.savefig("test.eps", format="eps")

но я получаю сообщение об ошибке:

File "C:\Python27\lib\site-packages\matplotlib\backends\backend_ps.py", line      258, in set_linewidth
self._pswriter.write("%1.3f setlinewidth\n"%linewidth)

TypeError: float argument required, not str

Как я могу это исправить? У меня есть Matplotlib 1.3.1


person Emmanuel Sunil    schedule 22.03.2015    source источник
comment
вы пробовали это без указания format="eps"?   -  person Julien Spronck    schedule 22.03.2015
comment
Проверьте: github.com/matplotlib/matplotlib/issues/3332   -  person kenorb    schedule 23.03.2015


Ответы (1)


Я понял проблему только сейчас. Кажется, что когда вы сохраняете цифры в формате eps, вам нужно убедиться, что все свойства фигуры являются числами с плавающей запятой. У меня была команда 'linewidth = 1'. Это должно быть 'linewidth=1.0'. Тогда это работает. Странно, что другие форматы, такие как svg, работают без проблем.

Спасибо!

Эммануэль

person Emmanuel Sunil    schedule 22.03.2015