Re: [Matplotlib-users] savefig and StringIO error on Python3

2014-11-03 Thread Pierre Haessig
Le 02/11/2014 09:34, Scott Lasley a écrit : I wish I could say that it was because of a deep understanding of the inner workings of matplotlib or a rock solid grasp of python 3's bytes vs strings, but it wasn't. fig.savefig threw the TypeError: string argument expected, got 'bytes'

Re: [Matplotlib-users] savefig and StringIO error on Python3

2014-11-02 Thread Scott Lasley
I wish I could say that it was because of a deep understanding of the inner workings of matplotlib or a rock solid grasp of python 3's bytes vs strings, but it wasn't. fig.savefig threw the TypeError: string argument expected, got 'bytes' exception, so I figured BytesIO might work better with

Re: [Matplotlib-users] savefig and StringIO error on Python3

2014-11-02 Thread Julien Hillairet
Well, the methodology is sufficient and efficient, I'm OK with that :) Thanks for these additional information. Regards, Le 2 nov. 2014 09:34, Scott Lasley slas...@space.umd.edu a écrit : I wish I could say that it was because of a deep understanding of the inner workings of matplotlib or a

[Matplotlib-users] savefig and StringIO error on Python3

2014-11-01 Thread Julien Hillairet
Dear all, I'm trying to write a html page content in which a png figure is generated by matplotlib, with Python3. However, the following piece of code does not work with matplotlib/Python3 (while it should work with Python2). The error is the following on TypeError: string argument expected,

Re: [Matplotlib-users] savefig and StringIO error on Python3

2014-11-01 Thread Benjamin Root
Please post the entire traceback so that we can know the context of the error message. Also, exactly which versions of matplotlib and python are you using? Ben Root On Sat, Nov 1, 2014 at 7:37 AM, Julien Hillairet julien.hillai...@gmail.com wrote: Dear all, I'm trying to write a html page

Re: [Matplotlib-users] savefig and StringIO error on Python3

2014-11-01 Thread Scott Lasley
This works for me with python 3.4.2 import matplotlib.pyplot as plt from io import BytesIO import base64 fig = plt.figure() ax = fig.add_subplot(111) ax.plot([1,2,3]) sio = BytesIO() fig.savefig(sio, format=png) html = htmlbody img src=data:image/png;base64,{}/

Re: [Matplotlib-users] savefig and StringIO error on Python3

2014-11-01 Thread Julien Hillairet
Many Thanks for your support. It is Python 3.3.5 and matplotlib 1.4.0 I've also found that it worked with ByteIO(), but then I was stuck by the encode/decode things. Thanks very much ! The traceback is below: Traceback (most recent call last): File ipython-input-1-e8a4a3fa67f4, line 1, in

Re: [Matplotlib-users] savefig and StringIO error on Python3

2014-11-01 Thread Julien Hillairet
Indeed, it works also for me with Python 3.3.5. Could you explain the changes you made and the reasons behind the byte/string encoding ? Best regards, 2014-11-01 17:21 GMT+01:00 Scott Lasley slas...@space.umd.edu: This works for me with python 3.4.2 import matplotlib.pyplot as plt from io