possible regression in wxpython 2.9.2.1 (matplotlib, pylab)?

45 views
Skip to first unread message

Vlastimil Brom

unread,
Aug 3, 2011, 10:11:57 PM8/3/11
to wxpytho...@googlegroups.com
Hi all,
first, sorry about the less informative subject line, however, I just
noticed some problems and wasn't able to identify the source more
exactly.

A very basic sample using matplotlib/pylab with WX backend seems to
work ok in 2.8.12.1 and 2.9.1.1 but has errors in 2.9.2.1.
Basically, the graph area is inactive and transparent - showing the
screen below this active frame; with resizing and moving this frame,
there are artefacts and display glitches and redrawing errors around
it, but the graph is not shown and there are no exceptions thrown.

(Using Python 2.7.2, matplotlib 1.0.1; win 7; wxPython 32bit (unicode)
- the mentioned versions)

Unfortunately, I couldn't find the offending code in matplotlib
source; but it might be a problem within wxpython, given the
differences between versions.
The problem only appears in the WX backend in matplotlib, WXAgg works
(in this regard) in all three wxpython versions.

Is there something obvious I should look into? Should I report this to
the tracker?

regards,
vbr

# # # # # # # # # # # pylab - wxPython # # # # # # # # # # # # # # # # #

#! Python
# -*- coding: utf-8 -*-

import wxversion
# wxversion.select('2.8') # 2.8.12.1 ok
# wxversion.select('2.9.1') # 2.9.1.1 ok
wxversion.select('2.9.2') # 2.9.2.1 !! display errors in pylab

import wx

import matplotlib # http://matplotlib.sourceforge.net/

# matplotlib.use('WXAgg') # ok in both, wx 2.8 and 2.9.x
matplotlib.use('WX')

import pylab

pylab.plot(range(3), range(3), label="a")
pylab.show()

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

test-pylab-wx-2-9-2.py

Robin Dunn

unread,
Aug 4, 2011, 1:24:20 PM8/4/11
to wxpytho...@googlegroups.com
On 8/3/11 7:11 PM, Vlastimil Brom wrote:
> Hi all,
> first, sorry about the less informative subject line, however, I just
> noticed some problems and wasn't able to identify the source more
> exactly.
>
> A very basic sample using matplotlib/pylab with WX backend seems to
> work ok in 2.8.12.1 and 2.9.1.1 but has errors in 2.9.2.1.
> Basically, the graph area is inactive and transparent - showing the
> screen below this active frame; with resizing and moving this frame,
> there are artefacts and display glitches and redrawing errors around
> it, but the graph is not shown and there are no exceptions thrown.
>
> (Using Python 2.7.2, matplotlib 1.0.1; win 7; wxPython 32bit (unicode)
> - the mentioned versions)
>
> Unfortunately, I couldn't find the offending code in matplotlib
> source; but it might be a problem within wxpython, given the
> differences between versions.
> The problem only appears in the WX backend in matplotlib, WXAgg works
> (in this regard) in all three wxpython versions.

It might be that they are doing something which isn't the correct way to
do things, but happened to still work in the older versions, and now it
doesn't. If you can dig into the matplotlib code enough to make a
standalone sample that reproduces the problem then I'd be able to say
for sure one way or another.


--
Robin Dunn
Software Craftsman
http://wxPython.org

Vlastimil Brom

unread,
Aug 15, 2011, 9:14:29 PM8/15/11
to wxpytho...@googlegroups.com
2011/8/4 Robin Dunn <ro...@alldunn.com>:

> On 8/3/11 7:11 PM, Vlastimil Brom wrote:
>>
>> A very basic sample using matplotlib/pylab with WX backend seems to
>> work ok in 2.8.12.1 and 2.9.1.1 but has errors in 2.9.2.1.
>> Basically, the graph area is inactive and transparent - showing the
>> screen below this active frame; with resizing and moving this frame,
>> there are artefacts and display glitches and redrawing errors around
>> it, but the graph is not shown and there are no exceptions thrown.
>>...

>
> It might be that they are doing something which isn't the correct way to do
> things, but happened to still work in the older versions, and now it
> doesn't. If you can dig into the matplotlib code enough to make a standalone
> sample that reproduces the problem then I'd be able to say for sure one way
> or another.
>
>
> --
> Robin Dunn
> Software Craftsman
> http://wxPython.org
>
> --
> To unsubscribe, send email to wxPython-user...@googlegroups.com
> or visit http://groups.google.com/group/wxPython-users?hl=en

Thanks for the hint and sorry for the delayed answer.
Unfortunately, I wasn't able to find the offending part in matplotlib code.
The buggy display of the graph gui is well reproducible from the
sample in the initial post (especially the change between wx 2.9.1 and
2.9.2).
Furthermore, it seems, that the wx mode like the other "non Agg" ones
is kind of partly supported in matplotlib:
http://old.nabble.com/matplotlib-backends---WXAgg-vs.-WX-td32257741.html
Hence, I'll probably stick with the more official WXAgg backend in this context.

Regards,
vbr

Reply all
Reply to author
Forward
0 new messages