loop through the data and call clf():

from pylab import *
from numpy import *

ion()
hold(False)

frame1 = zeros((200, 200))
frame1[20:40, 20:40] = 255

frame2 = zeros((200, 200))
frame2[20:40, 30:50] = 255

frame3 = zeros((200, 200))
frame3[20:40, 40:60] = 255

frame4 = zeros((200, 200))
frame4[20:40, 50:70] = 255

frame5 = zeros((200, 200))
frame5[20:40, 50:70] = 255

data=[frame1,frame2,frame3,frame4,frame5]

for frame in data:
    m=imshow(frame)
    m.set_data(frame)
    clf()
show()
#close() 

> Message: 2
> Date: Tue, 7 Oct 2008 15:10:30 +0200
> From: "Alexander Borghgraef" <[EMAIL PROTECTED]>
> Subject: [Matplotlib-users] Animation and imshow
> To: matplotlib-users@lists.sourceforge.net
> Message-ID:
>       <[EMAIL PROTECTED]>
> Content-Type: text/plain; charset=ISO-8859-1
> 
> I'm trying to figure out how to do animated graphics in pylab using
> imshow, so I made this little 'hello world' equivalent showing a
> moving square over two frames.
> Problem is I have to call draw twice to refresh the image. Anyone can
> explain why this is so (and how to do this more elegantly)? This is
> the code:
> 
> from pylab import *
> from numpy import *
> 
> ion()
> hold(False)
> 
> frame1 = zeros((200, 200))
> frame1[20:40, 20:40] = 255
> 
> frame2 = zeros((200, 200))
> frame2[20:40, 30:50] = 255
> 
> m = imshow(frame1)
> draw()               # shows frame1
> m.set_data(frame2)
> draw()               # still shows frame1!!!
> draw()               # and now it shows frame2!??
> 
> 
> -- 
> Alex Borghgraef
> 
> 

-- 
"When you think of the long and gloomy history of man, you will find far
more hideous crimes have been committed in the name of obedience than
have been committed in the name of rebellion". C.P.Snow,
"Either-Or" (1961)

Attachment: signature.asc
Description: This is a digitally signed message part

-------------------------------------------------------------------------
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-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to