This one to the list - sorry Mark used the wrong reply button.
I don't work on Python 3 yet but I am trying to get Phoenix to work with matplotlib.
Made a few changes to backend_wx:
Following don't exist in Phoenix (build r73823) - will research later if they should exist.
#wx.WXK_PRIOR : 'pageup',
#wx.WXK_NEXT : 'pagedown',
#wx.WXK_NUMPAD_PRIOR : 'pageup',
#wx.WXK_NUMPAD_NEXT : 'pagedown',
There are a few EmptyBitMap creates which need to be changed to:
if 'phoenix' in wx.PlatformInfo:
self.bitmap = wx.Bitmap(w, h)
else:
self.bitmap = wx.EmptyBitmap(w, h)
But now I am stuck on the following exception and I haven't found a solution to this yet - any pointers would be very welcome.
Werner
AttributeError: 'BaseApp' object has no attribute 'ProcessIdle'
File "c:\dev\twcbv4\twcbsrc\controllers\app_stats.py", line 864, in <module>
apprb = Appstats(None, standalone=True)
File "c:\dev\twcbv4\twcbsrc\controllers\app_stats.py", line 203, in __init__
self.setupControls()
File "c:\dev\twcbv4\twcbsrc\controllers\app_stats.py", line 236, in setupControls
self.createStatsPanes()
File "c:\dev\twcbv4\twcbsrc\controllers\app_stats.py", line 401, in createStatsPanes
self.paneStatsDtypeCons.axes = self.paneStatsDtypeCons.figure.add_subplot(noRow, noCol, 1)
File "c:\Python27\Lib\site-packages\matplotlib\figure.py", line 882, in add_subplot
a = subplot_class_factory(projection_class)(self, *args, **kwargs)
File "c:\Python27\Lib\site-packages\matplotlib\axes.py", line 8938, in __init__
self._axes_class.__init__(self, fig, self.figbox, **kwargs)
File "c:\Python27\Lib\site-packages\matplotlib\axes.py", line 461, in __init__
self._init_axis()
File "c:\Python27\Lib\site-packages\matplotlib\axes.py", line 523, in _init_axis
self.spines['right'].register_axis(self.yaxis)
File "c:\Python27\Lib\site-packages\matplotlib\spines.py", line 151, in register_axis
self.axis.cla()
File "c:\Python27\Lib\site-packages\matplotlib\axis.py", line 732, in cla
self.reset_ticks()
File "c:\Python27\Lib\site-packages\matplotlib\axis.py", line 746, in reset_ticks
self.minorTicks.extend([self._get_tick(major=False)])
File "c:\Python27\Lib\site-packages\matplotlib\axis.py", line 1839, in _get_tick
return YTick(self.axes, 0, '', major=major, **tick_kw)
File "c:\Python27\Lib\site-packages\matplotlib\axis.py", line 140, in __init__
self.tick2line = self._get_tick2line()
File "c:\Python27\Lib\site-packages\matplotlib\axis.py", line 541, in _get_tick2line
l.set_transform(self.axes.get_yaxis_transform(which='tick2'))
File "c:\Python27\Lib\site-packages\matplotlib\lines.py", line 476, in set_transform
Artist.set_transform(self, t)
File "c:\Python27\Lib\site-packages\matplotlib\artist.py", line 235, in set_transform
self.pchanged()
File "c:\Python27\Lib\site-packages\matplotlib\artist.py", line 216, in pchanged
for oid, func in self._propobservers.iteritems():
···
On 19/04/2013 12:26, Mark Lawrence wrote:
On 19/04/2013 04:03, John Ladasky wrote:
Reading more, I realize that the way I was getting GUI output previously
(with Python 2.7 and Matplotlib 1.1) was through wxPython.
Unfortunately, it appears that wxPython's star is fading, and a Python
3-compatible version will not be written. In fact, wxPython hasn't
released a new version in nine months.
I'm surprised that you say this as months of work have gone into
updating wxPython to make in Python 3 compatible. Please see
Index of /Phoenix/snapshot-builds for the latest and greatest.