Revision: 6090
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=6090&view=rev
Author:   jdh2358
Date:     2008-09-13 15:35:55 +0000 (Sat, 13 Sep 2008)

Log Message:
-----------
updated the wx animation examples

Added Paths:
-----------
    trunk/matplotlib/examples/animation/simple_idle_wx.py
    trunk/matplotlib/examples/animation/simple_timer_wx.py

Removed Paths:
-------------
    trunk/matplotlib/examples/animation/dynamic_image_wxagg.py
    trunk/matplotlib/examples/animation/simple_anim_wx.py

Deleted: trunk/matplotlib/examples/animation/dynamic_image_wxagg.py
===================================================================
--- trunk/matplotlib/examples/animation/dynamic_image_wxagg.py  2008-09-13 
14:28:09 UTC (rev 6089)
+++ trunk/matplotlib/examples/animation/dynamic_image_wxagg.py  2008-09-13 
15:35:55 UTC (rev 6090)
@@ -1,100 +0,0 @@
-#!/usr/bin/env python
-"""
-Copyright (C) 2003-2004 Jeremy O'Donoghue and others
-
-License: This work is licensed under the PSF. A copy should be included
-with this source code, and is also available at
-http://www.python.org/psf/license.html
-
-"""
-import sys, time, os, gc
-
-import matplotlib
-matplotlib.use('WXAgg')
-
-from matplotlib import rcParams
-import matplotlib.cm as cm
-
-from matplotlib.backends.backend_wxagg import Toolbar, FigureCanvasWxAgg
-
-from matplotlib.figure import Figure
-import numpy as npy
-import wx
-
-
-TIMER_ID = wx.NewId()
-
-class PlotFigure(wx.Frame):
-
-    def __init__(self):
-        wx.Frame.__init__(self, None, -1, "Test embedded wxFigure")
-
-        self.fig = Figure((5,4), 75)
-        self.canvas = FigureCanvasWxAgg(self, -1, self.fig)
-        self.toolbar = Toolbar(self.canvas)
-        self.toolbar.Realize()
-
-        # On Windows, default frame size behaviour is incorrect
-        # you don't need this under Linux
-        tw, th = self.toolbar.GetSizeTuple()
-        fw, fh = self.canvas.GetSizeTuple()
-        self.toolbar.SetSize(wx.Size(fw, th))
-
-        # Initialise the timer - wxPython requires this to be connected to
-        # the receiving event handler
-        self.t = wx.Timer(self, TIMER_ID)
-        self.t.Start(10)
-
-        # Create a figure manager to manage things
-
-        # Now put all into a sizer
-        sizer = wx.BoxSizer(wx.VERTICAL)
-        # This way of adding to sizer allows resizing
-        sizer.Add(self.canvas, 1, wx.LEFT|wx.TOP|wx.GROW)
-        # Best to allow the toolbar to resize!
-        sizer.Add(self.toolbar, 0, wx.GROW)
-        self.SetSizer(sizer)
-        self.Fit()
-        self.Bind(wx.EVT_TIMER, self.onTimer, id=TIMER_ID)
-        self.Bind(wx.EVT_CLOSE, self.onClose)
-
-    def init_plot_data(self):
-        # jdh you can add a subplot directly from the fig rather than
-        # the fig manager
-        a = self.fig.add_subplot(111)
-        self.x = npy.arange(120.0)*2*npy.pi/120.0
-        self.x.resize((100,120))
-        self.y = npy.arange(100.0)*2*npy.pi/100.0
-        self.y.resize((120,100))
-        self.y = npy.transpose(self.y)
-        z = npy.sin(self.x) + npy.cos(self.y)
-        self.im = a.imshow( z, cmap=cm.jet)#, interpolation='nearest')
-
-    def GetToolBar(self):
-        # You will need to override GetToolBar if you are using an
-        # unmanaged toolbar in your frame
-        return self.toolbar
-
-    def onTimer(self, evt):
-        self.x += npy.pi/15
-        self.y += npy.pi/20
-        z = npy.sin(self.x) + npy.cos(self.y)
-        self.im.set_array(z)
-        self.canvas.draw()
-        #self.canvas.gui_repaint()  # jdh wxagg_draw calls this already
-
-    def onClose(self, evt):
-        self.t.Stop()
-        evt.Skip()
-
-    def onEraseBackground(self, evt):
-        # this is supposed to prevent redraw flicker on some X servers...
-        pass
-
-if __name__ == '__main__':
-    app = wx.PySimpleApp()
-    frame = PlotFigure()
-    frame.init_plot_data()
-
-    frame.Show()
-    app.MainLoop()

Deleted: trunk/matplotlib/examples/animation/simple_anim_wx.py
===================================================================
--- trunk/matplotlib/examples/animation/simple_anim_wx.py       2008-09-13 
14:28:09 UTC (rev 6089)
+++ trunk/matplotlib/examples/animation/simple_anim_wx.py       2008-09-13 
15:35:55 UTC (rev 6090)
@@ -1,29 +0,0 @@
-"""
-A simple example of an animated plot using a wx backend
-"""
-import time
-import numpy as np
-import matplotlib
-matplotlib.use('WXAgg') # do this before importing pylab
-
-import matplotlib.pyplot as plt
-
-fig = plt.figure()
-
-ax = fig.add_subplot(111)
-
-def animate(idleevent):
-    tstart = time.time()                   # for profiling
-    x = np.arange(0, 2*np.pi, 0.01)        # x-array
-    line, = ax.plot(x, np.sin(x))
-
-    for i in np.arange(1,200):
-        line.set_ydata(np.sin(x+i/10.0))  # update the data
-        fig.canvas.draw()                 # redraw the canvas
-    print 'FPS:' , 200/(time.time()-tstart)
-    raise SystemExit
-
-# call the animation loop on idle
-import wx
-wx.EVT_IDLE(wx.GetApp(), animate)
-plt.show()

Added: trunk/matplotlib/examples/animation/simple_idle_wx.py
===================================================================
--- trunk/matplotlib/examples/animation/simple_idle_wx.py                       
        (rev 0)
+++ trunk/matplotlib/examples/animation/simple_idle_wx.py       2008-09-13 
15:35:55 UTC (rev 6090)
@@ -0,0 +1,29 @@
+"""
+A simple example of an animated plot using a wx backend
+"""
+import time
+import numpy as np
+import matplotlib
+matplotlib.use('WXAgg') # do this before importing pylab
+
+import matplotlib.pyplot as plt
+
+fig = plt.figure()
+
+ax = fig.add_subplot(111)
+t = np.arange(0, 2*np.pi, 0.1)
+line, = ax.plot(t, np.sin(t))
+dt = 0.05
+
+def update_line(idleevent):
+    if update_line.i==200:
+        return False
+    print 'animate', update_line.i
+    line.set_ydata(np.sin(t+update_line.i/10.))
+    fig.canvas.draw_idle()                 # redraw the canvas
+    update_line.i += 1
+update_line.i = 0
+
+import wx
+wx.EVT_IDLE(wx.GetApp(), update_line)
+plt.show()

Added: trunk/matplotlib/examples/animation/simple_timer_wx.py
===================================================================
--- trunk/matplotlib/examples/animation/simple_timer_wx.py                      
        (rev 0)
+++ trunk/matplotlib/examples/animation/simple_timer_wx.py      2008-09-13 
15:35:55 UTC (rev 6090)
@@ -0,0 +1,36 @@
+"""
+A simple example of an animated plot using a wx backend
+"""
+import time
+import numpy as np
+import matplotlib
+matplotlib.use('WXAgg') # do this before importing pylab
+
+import matplotlib.pyplot as plt
+
+fig = plt.figure()
+
+ax = fig.add_subplot(111)
+t = np.arange(0, 2*np.pi, 0.1)
+line, = ax.plot(t, np.sin(t))
+dt = 0.05
+
+
+def update_line(event):
+    if update_line.i==200:
+        return False
+    print 'update', update_line.i
+    line.set_ydata(np.sin(t+update_line.i/10.))
+    fig.canvas.draw()                 # redraw the canvas
+    update_line.i += 1
+update_line.i = 0
+
+import wx
+id = wx.NewId()
+actor = fig.canvas.manager.frame
+timer = wx.Timer(actor, id=id)
+timer.Start(100)
+wx.EVT_TIMER(actor, id, update_line)
+#actor.Bind(wx.EVT_TIMER, update_line, id=id)
+
+plt.show()


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Matplotlib-checkins mailing list
Matplotlib-checkins@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to