Plotting issue with mpl = getting stuck

Hi,

I am having a recurrent (and very annoying) problem with plotting.

Basically: I enter my Ipython session (with -pylab), execute a few commands from
locally developed modules, and then try to make one plot. The plot does not
appear (I don't get back the command line), and my session is then completely
stuck, and I have no other way out (as far as I could find) than to just do a
shell "kill" of my Ipython session.
I then RE-enter the Ipython session, relaunch the exact SAME commands, including
the plotting one, and there it works.

This happens very frequently (first trial = I get stuck with the first plotting,
then after killing the session and redoing the same thing, it works).

This is VERY annoying specially as some of the calculations I commonly use are
quite long (which makes it very difficult for me to provide more info here,
sorry...). I guess this may be a memory problem of some sort? Any clue of either
how to solve this or at least how to find out what is exactly the problem?

thanks for your help

Eric

···

========
CONFIG =

Under OpenSuse 10.3 (x86_64)

matplotlib version 0.90.1
verbose.level helpful
interactive is False
units is False
platform is linux2
numerix numpy 1.0.3.1
font search path
['/usr/lib64/python2.5/site-packages/matplotlib/mpl-data/fonts/ttf',
'/usr/lib64/python2.5/site-packages/matplotlib/mpl-data/fonts/afm']
matplotlib data path /usr/lib64/python2.5/site-packages/matplotlib/mpl-data
backend WXAgg version 2.8.4.0
Python 2.5.1 (r251:54863, Jan 10 2008, 18:00:49)
IPython 0.8.1 -- An enhanced Interactive Python.

That's a good one :wink: There are some pretty clever things done with threading when you do "ipython -pylab" to make the GUI and the shell responsive at the same time. I wonder if you've entered a race condition/deadlock or something. A useful piece of information is whether you are running on a multi-core machine. Have you ever seen it lock up if you don't use "-pylab"? (In that case it would be normal for the shell to stop responding, but the GUI should still repaint and resize etc.)

There may be others on this list who are of more help than me, but you may also want to ask your question on the ipython mailing list if we can't solve it here. I suspect this is related to the interaction of the two projects.

Cheers,
Mike

Eric Emsellem wrote:

···

Hi,

I am having a recurrent (and very annoying) problem with plotting.

Basically: I enter my Ipython session (with -pylab), execute a few commands from
locally developed modules, and then try to make one plot. The plot does not
appear (I don't get back the command line), and my session is then completely
stuck, and I have no other way out (as far as I could find) than to just do a
shell "kill" of my Ipython session.
I then RE-enter the Ipython session, relaunch the exact SAME commands, including
the plotting one, and there it works.

This happens very frequently (first trial = I get stuck with the first plotting,
then after killing the session and redoing the same thing, it works).

This is VERY annoying specially as some of the calculations I commonly use are
quite long (which makes it very difficult for me to provide more info here,
sorry...). I guess this may be a memory problem of some sort? Any clue of either
how to solve this or at least how to find out what is exactly the problem?

thanks for your help

Eric

CONFIG =

Under OpenSuse 10.3 (x86_64)

matplotlib version 0.90.1
verbose.level helpful
interactive is False
units is False
platform is linux2
numerix numpy 1.0.3.1
font search path
['/usr/lib64/python2.5/site-packages/matplotlib/mpl-data/fonts/ttf',
'/usr/lib64/python2.5/site-packages/matplotlib/mpl-data/fonts/afm']
matplotlib data path /usr/lib64/python2.5/site-packages/matplotlib/mpl-data
backend WXAgg version 2.8.4.0
Python 2.5.1 (r251:54863, Jan 10 2008, 18:00:49)
IPython 0.8.1 -- An enhanced Interactive Python.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users
  
--
Michael Droettboom
Science Software Branch
Operations and Engineering Division
Space Telescope Science Institute
Operated by AURA for NASA

It would also be useful to know what matplotlib version and backend you are
using, and what version of ipython. For what its worth, I use ipython -pylab
with svn/bzr ipython and the qt4agg backend on a multicore machine without
any problems. If you can, I suggest trying the development branch of ipython
(not ipython1), there was some improvement to the threading code recently,
although I don't know if it would relate to the problem you reported.

Darren

···

On Tuesday 13 May 2008 8:09:38 am Michael Droettboom wrote:

That's a good one :wink: There are some pretty clever things done with
threading when you do "ipython -pylab" to make the GUI and the shell
responsive at the same time. I wonder if you've entered a race
condition/deadlock or something. A useful piece of information is
whether you are running on a multi-core machine. Have you ever seen it
lock up if you don't use "-pylab"? (In that case it would be normal for
the shell to stop responding, but the GUI should still repaint and
resize etc.)

There may be others on this list who are of more help than me, but you
may also want to ask your question on the ipython mailing list if we
can't solve it here. I suspect this is related to the interaction of
the two projects.

Cheers,
Mike

Eric Emsellem wrote:
> Hi,
>
> I am having a recurrent (and very annoying) problem with plotting.
>
> Basically: I enter my Ipython session (with -pylab), execute a few
> commands from locally developed modules, and then try to make one plot.
> The plot does not appear (I don't get back the command line), and my
> session is then completely stuck, and I have no other way out (as far as
> I could find) than to just do a shell "kill" of my Ipython session.
> I then RE-enter the Ipython session, relaunch the exact SAME commands,
> including the plotting one, and there it works.
>
> This happens very frequently (first trial = I get stuck with the first
> plotting, then after killing the session and redoing the same thing, it
> works).
>
> This is VERY annoying specially as some of the calculations I commonly
> use are quite long (which makes it very difficult for me to provide more
> info here, sorry...). I guess this may be a memory problem of some sort?
> Any clue of either how to solve this or at least how to find out what is
> exactly the problem?
>
> thanks for your help
>
> Eric
> ========
> CONFIG =
> ========
> Under OpenSuse 10.3 (x86_64)
>
> matplotlib version 0.90.1
> verbose.level helpful
> interactive is False
> units is False
> platform is linux2
> numerix numpy 1.0.3.1
> font search path
> ['/usr/lib64/python2.5/site-packages/matplotlib/mpl-data/fonts/ttf',
> '/usr/lib64/python2.5/site-packages/matplotlib/mpl-data/fonts/afm']
> matplotlib data path
> /usr/lib64/python2.5/site-packages/matplotlib/mpl-data backend WXAgg
> version 2.8.4.0
> Python 2.5.1 (r251:54863, Jan 10 2008, 18:00:49)
> IPython 0.8.1 -- An enhanced Interactive Python.
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users

--
Darren S. Dale, Ph.D.
dd55@...163...

Hi,
thanks for the input.

In fact this happens on a dual core machine. As for the Ipython version etc it
is written at the end of my original email.

I'll try to see with the Ipython forum maybe. Not sure where it comes from,
which is the difficult part (mpl, ipython, or...?)

I'll also try to isolate some simple functions which does this... But this may
be hard to do.

thanks

Eric