Hi all, I'd like to ask about some issues I am having with using matplotlib with the latest wxpython version 2.9.1.1; I already mentioned that on the wxpython list: https://groups.google.com/forum/#!topic/wxpython-users/vG-5NJ4vXnc but it is unclear whether this is a bug in wx or a possible problem with the backend_wx which happened to be "tolerated" in wxpython sofar.
Simple code using the WX backend seems to work ok in 2.8.12.1 and 2.9.1.1 but not in 2.9.2.1. The graph canvas 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. (I am using Python 2.7.2, matplotlib 1.0.1; win 7 and Win XP; wxPython 32bit (unicode)) # # # # # # # # # # # 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() # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # A very simple version without pylab shows the same problem: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #! Python # -*- coding: utf-8 -*- import wxversion # wxversion.select('2.8') wxversion.select('2.9.2') import wx import matplotlib matplotlib.use('WX') from matplotlib.backends.backend_wx import FigureCanvasWx as FigureCanvas # err on wx 2.9.2 # from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas # ok from matplotlib.figure import Figure class CanvasFrame(wx.Frame): def __init__(self, ): wx.Frame.__init__(self, None, -1, 'CanvasFrame', size=(550,350)) self.figure = Figure() self.axes = self.figure.add_subplot(111) self.axes.plot(range(4),range(4)) self.figure_canvas = FigureCanvas(self, -1, self.figure) self.sizer = wx.BoxSizer(wx.VERTICAL) self.sizer.Add(self.figure_canvas, 1, wx.LEFT | wx.TOP | wx.GROW) self.SetSizer(self.sizer) if __name__=='__main__': app = wx.App(False) frm = CanvasFrame() frm.Show(True) app.MainLoop() # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # It is likely to depending on matplotlib.backends.backend_wx :: FigureCanvasWx (or some inherited classes), but I had sofar no success in finding the problematic code. Could you maybe give any pointer where to look into, or maybe how to activate some exception tracebacks etc? (Changing _DEBUG = 5 in ...\matplotlib\backends\backend_wx.py to other values doesn't seem to have this effect). Thanks in advance, vbr ------------------------------------------------------------------------------ BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA The must-attend event for mobile developers. Connect with experts. Get tools for creating Super Apps. See the latest technologies. Sessions, hands-on labs, demos & much more. Register early & save! http://p.sf.net/sfu/rim-blackberry-1 _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users