Runtime Error - Need Advice

I can now reproduce this. It seems the same old problem that PythonWin
can not reliably run matplotlib because successive runs of the script
use the same interpreter. Ipython should work. Append pylab.close() to
your script; at least it will not crash on the second run.

-- Christoph

···

On 2/9/2010 10:44 AM, Lee Boger wrote:

Although, if I close the figure then re-run the script, a new figure
pops up but it doesn't have any data plotted. Interpreter is now locked
up. I'm still not fixing it completely. There is also no figure stored
as a file log_plot.

Lee

*Christoph Gohlke <cgohlke@...2143...>*

02/09/2010 01:23 PM

To
  Lee Boger <Boger_Lee@...2968...>
cc
  
Subject
  Re: [Matplotlib-users] Runtime Error - Need Advice

Caterpillar: Confidential Green Retain Until: 03/11/2010

Change the last line to pylab.show() and it should work.

Anyway, this example should not crash the interpreter. I can reproduce
the crash on Python 2.4, 2.5, and 2.6 (32 and 64 bit) on Windows with
mpl 0.99.1 but not on Ubuntu 9.1 with mpl 0.99.0.

The shortest example that crashes is:

python -c "import pylab;pylab.subplot(111).figure.show()"

or on the interactive prompt:

import pylab
pylab.subplot(111).figure.show()
exit()

Fatal Python error: PyEval_RestoreThread: NULL tstate

This application has requested the Runtime to terminate it in an unusual
way.
Please contact the application's support team for more information.

-- Christoph

On 2/9/2010 7:57 AM, Lee Boger wrote:

Windows XP Professional with Python 2.5 installed (pywin32 build 210) -
came with dSPACE software package

Downloaded and installed matplotlib-0.99.1.win32-py2.5.exe from
sourceforge.net

Downloaded and installed numpy-1.4.0-win32-superpack-python2.5.exe from
sourceforge.net

Executing the following simple "log plot" script within PythonWin:

*from* matplotlib *import* pylab

# Create some artificial data.
test_frequency = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20]
test_results = [-0.2, -0.7, -1.0, -1.5, -2.0, -2.5, -3.0, -3.5, -4, -5,
-6, -7.1, -8, -9, -10, -11, -12, -15, -20, -25]
spec_frequency = [6, 8]
spec_results = [-3.0, -3.0]

# Plot
figure = pylab.subplot(111)
figure.semilogx()
figure.scatter(test_frequency, test_results, s=20, c='b', marker='s',
edgecolors='none')
figure.scatter(spec_frequency, spec_results, s=40, c='g', marker='s',
edgecolors='none')
figure.grid(True)
figure.set_xlabel(r"Frequency (Hz)", fontsize = 12)
figure.set_ylabel(r"Actuator Response (db)", fontsize = 12)

figure.figure.savefig('log_plot')
figure.figure.show()

Plots a figure on the screen that looks correct, then the following
error (when I click OK, PythonWin closes)

Any advice would be appreciated. Maybe it's an installation or setup
issue, but I'm pretty knew to Python programming and don't know how to
debug this.

Lee Boger

------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the

business

Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com

_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Thanks for all your suggestions Christoph.
Launching the Tk Python Shell instead of PythonWin seems to work consistently

  • I get the correct plot figure and the correct log_plot.png file created
    everytime I run the script. I never did install Ipython, but I’ll consider
    that for a future upgrade.

Lee

Christoph Gohlke <cgohlke@…2143…>
02/09/2010 04:35 PM

To

matplotlib-users matplotlib-users@lists.sourceforge.net
cc

Subject

Re: [Matplotlib-users] Runtime Error

  • Need Advice

Caterpillar: Confidential Green
Retain Until: 03/11/2010

`I can now reproduce this. It seems the same old problem
that PythonWin

can not reliably run matplotlib because successive runs of the script

use the same interpreter. Ipython should work. Append pylab.close() to

your script; at least it will not crash on the second run.

– Christoph

Although, if I close the figure then re-run the script, a new figure

pops up but it doesn’t have any data plotted. Interpreter is now locked

up. I’m still not fixing it completely. There is also no figure stored

as a file log_plot.

Lee

Christoph Gohlke <cgohlke@…2143…>

02/09/2010 01:23 PM

To

             Lee

Boger <Boger_Lee@…2968…>

cc

Subject

             Re:

[Matplotlib-users] Runtime Error - Need Advice

Caterpillar: Confidential Green Retain
Until: 03/11/2010

Change the last line to pylab.show() and it should work.

Anyway, this example should not crash the interpreter. I can reproduce

the crash on Python 2.4, 2.5, and 2.6 (32 and 64 bit) on Windows with

mpl 0.99.1 but not on Ubuntu 9.1 with mpl 0.99.0.

The shortest example that crashes is:

python -c “import pylab;pylab.subplot(111).figure.show()”

or on the interactive prompt:

import pylab

pylab.subplot(111).figure.show()

exit()

Fatal Python error: PyEval_RestoreThread: NULL tstate

This application has requested the Runtime to terminate it in an unusual

way.

Please contact the application’s support team for more information.

– Christoph

Windows XP Professional with Python 2.5 installed (pywin32 build

came with dSPACE software package

Downloaded and installed matplotlib-0.99.1.win32-py2.5.exe from

sourceforge.net

Downloaded and installed numpy-1.4.0-win32-superpack-python2.5.exe
from

sourceforge.net

Executing the following simple “log plot” script within
PythonWin:

from matplotlib import pylab

Create some artificial data.

test_frequency = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16,

17, 18, 19, 20]

test_results = [-0.2, -0.7, -1.0, -1.5, -2.0, -2.5, -3.0, -3.5,
-4, -5,

-6, -7.1, -8, -9, -10, -11, -12, -15, -20, -25]

spec_frequency = [6, 8]

spec_results = [-3.0, -3.0]

Plot

figure = pylab.subplot(111)

figure.semilogx()

figure.scatter(test_frequency, test_results, s=20, c=‘b’, marker=‘s’,

edgecolors=‘none’)

figure.scatter(spec_frequency, spec_results, s=40, c=‘g’, marker=‘s’,

edgecolors=‘none’)

figure.grid(True)

figure.set_xlabel(r"Frequency (Hz)", fontsize = 12)

figure.set_ylabel(r"Actuator Response (db)", fontsize
= 12)

figure.figure.savefig(‘log_plot’)

figure.figure.show()

Plots a figure on the screen that looks correct, then the following

error (when I click OK, PythonWin closes)

Any advice would be appreciated. Maybe it’s an installation or
setup

issue, but I’m pretty knew to Python programming and don’t know
how to

debug this.

Lee Boger


The Planet: dedicated and managed hosting, cloud storage, colocation

Stay online with enterprise data centers and the best network
in the

business

Choose flexible plans and management services without long-term
contracts

Personal 24x7 support from experience hosting pros just a phone
call away.

···

On 2/9/2010 10:44 AM, Lee Boger wrote:

On 2/9/2010 7:57 AM, Lee Boger wrote:

http://p.sf.net/sfu/theplanet-com


Matplotlib-users mailing list

Matplotlib-users@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-users


SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,

Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW

http://p.sf.net/sfu/solaris-dev2dev


Matplotlib-users mailing list

Matplotlib-users@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-users

`