Possible bug with saving eps figure

Hi, this is not a big deal, but I think that there is a bug while
saving eps figures and passing the linewidth='2.5' as string instead
of float. The following reproduces the error I get here:

plt.plot([1,2,3], 'k', linewidth='2.5')
plt.savefig('teste.png') # Saves OK
# The following fails with linewidth='2.5', but passes with linewidth=2.5
# TypeError: float argument required, not str
plt.savefig('teste.eps')
plt.show() # show is OK for both cases.

matplotlib.__version__
Out[2]: '1.2.x'

-Filipe

That's not a bug. linewidth is required to be a float, rather than a string. Python's typing is generally a little stricter than languages such as JavaScript.

Mike

···

On 05/07/2012 12:14 PM, Filipe Pires Alvarenga Fernandes wrote:

Hi, this is not a big deal, but I think that there is a bug while
saving eps figures and passing the linewidth='2.5' as string instead
of float. The following reproduces the error I get here:

plt.plot([1,2,3], 'k', linewidth='2.5')
plt.savefig('teste.png') # Saves OK
# The following fails with linewidth='2.5', but passes with linewidth=2.5
# TypeError: float argument required, not str
plt.savefig('teste.eps')
plt.show() # show is OK for both cases.

matplotlib.__version__
Out[2]: '1.2.x'

-Filipe

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
matplotlib-users List Signup and Options

I think the bigger question is why does it work with show()? I would expect it to fail. I would rather have it fail everywhere or work everywhere.

Ben Root

···

On Mon, May 7, 2012 at 12:55 PM, Michael Droettboom <mdroe@…86…> wrote:

That’s not a bug. linewidth is required to be a float, rather than a

string. Python’s typing is generally a little stricter than languages

such as JavaScript.

Mike

Yep, that's what I was expecting. It should fail with both show() and
the save as 'png' format. However, it only fails when trying to save
an 'eps'

-Filipe

···

On Mon, May 7, 2012 at 1:12 PM, Benjamin Root <ben.root@...1304...> wrote:

On Mon, May 7, 2012 at 12:55 PM, Michael Droettboom <mdroe@...86...> wrote:

That's not a bug. linewidth is required to be a float, rather than a
string. Python's typing is generally a little stricter than languages
such as JavaScript.

Mike

I think the bigger question is why does it _work_ with show()? I would
expect it to fail. I would rather have it fail everywhere or work
everywhere.

Ben Root

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
matplotlib-users List Signup and Options