Dibujar trayectorias espaciales de fase con flechas en matplotlib

Estoy tratando de dibujar el diagrama de espacio de fase para un cierto sistema dinámico. En efecto, tengo un plano 2d en el que hay un punto de partida seguido del siguiente punto y así sucesivamente. Quiero conectar estos puntos con líneas y además quiero dibujar algunas flechas para poder ver la dirección (punto de partida al siguiente punto, etc.). Decidí usar linetype'->' para lograr esto, pero no da ningún buen resultado y las flechas parecen apuntar en la dirección incorrecta muchas veces. También están bastante espaciados y, por lo tanto, no puedo ver las líneas individuales.

Mi código se da a continuación:

import numpy as np
import matplotlib.pylab as plt
from scipy.integrate import odeint

def system(vect, t):
    x, y = vect
    return [x - y - x * (x**2 + 5 * y**2), x + y - y * (x**2 + y**2)]

vect0 = [(-2 + 4*np.random.random(), -2 + 4*np.random.random()) for i in range(5)]
t = np.linspace(0, 100, 1000)

for v in vect0:
    sol = odeint(system, v, t)
    plt.plot(sol[:, 0], sol[:, 1], '->')

plt.show()

La gráfica resultante se muestra a continuación:

Como se puede ver, las flechas no están correctamente alineadas con las líneas que conectan los puntos. Además, muchas flechas están "saliendo" y quiero que "entren" porque el siguiente punto siempre se encuentra hacia el círculo cerrado en el medio. Además, la trama parece demasiado desordenada y me gustaría trazar menos flechas para que esa trama se vea mejor. ¿Alguien tiene alguna idea de cómo hacerlo? Gracias por adelantado.

Respuestas a la pregunta(1)

Su respuesta a la pregunta