Making movies from plots
If you have data that evolves, you might want to save it as a movie besides showing it in a figure window, similar to the savefig command. One way to do this is with the visvis module available at visvis (refer to [37] for more information).
Here is a simple example of evolving a circle using an implicit representation. Let the circle be represented by the zero level,
, of a function
. Alternatively, consider the disk
inside the zero set. If the value of f decreases at a rate v then the circle will move outward with rate
.
This can be implemented as:
import visvis.vvmovie as vv
# create initial function values
x = linspace(-255,255,511)
X,Y = meshgrid(x,x)
f = sqrt(X*X+Y*Y) - 40 #radius 40
# evolve and store in a list
imlist = []
for iteration in range(200):
imlist.append((f>0)*255)
f -= 1 # move outwards one pixel
vv.images2swf.writeSwf('circle_evolution.swf',imlist)The result is a Flash movie...