Matplotlib FuncAnimation para el diagrama de dispersión

Estoy tratando de usar elFuncAnimation de Matplotlib para animar la visualización de un punto por cuadro de animación.

# modules
#------------------------------------------------------------------------------
import numpy as np
import matplotlib.pyplot as py
from matplotlib import animation

py.close('all') # close all previous plots

# create a random line to plot
#------------------------------------------------------------------------------

x = np.random.rand(40)
y = np.random.rand(40)

py.figure(1)
py.scatter(x, y, s=60)
py.axis([0, 1, 0, 1])
py.show()

# animation of a scatter plot using x, y from above
#------------------------------------------------------------------------------

fig = py.figure(2)
ax = py.axes(xlim=(0, 1), ylim=(0, 1))
scat = ax.scatter([], [], s=60)

def init():
    scat.set_offsets([])
    return scat,

def animate(i):
    scat.set_offsets([x[:i], y[:i]])
    return scat,

anim = animation.FuncAnimation(fig, animate, init_func=init, frames=len(x)+1, 
                               interval=200, blit=False, repeat=False)

Desafortunadamente, la trama animada final no es la misma que la trama original. La trama animada también muestra varios puntos durante cada cuadro de animación. Cualquier sugerencia sobre cómo animar correctamente un diagrama de dispersión utilizando elanimation ¿paquete?

Respuestas a la pregunta(2)

Su respuesta a la pregunta