Python traçage en temps réel

Je l'acquisition de certaines données dans les deux tableaux: un pour le moment, et une pour la valeur. Quand j'arrive à 1000 points, je déclenchement d'un signal et le tracé de ces points (x=temps, y=valeur).

J'ai besoin de garder sur la même figure la précédente parcelles, mais seulement un nombre raisonnable pour éviter de ralentir le processus. Par exemple, je tiens à garder 10 000 points sur mon graphique.
Le matplotlib interactive de l'intrigue fonctionne bien, mais je ne sais pas comment faire pour effacer les premiers points et il ralentit mon ordinateur très rapidement.
J'ai regardé dans matplotlib.animation, mais il semble que pour répéter la même parcelle, et pas vraiment d'actualiser.

Je suis vraiment à la recherche d'une solution de lumière, afin d'éviter tout ralentissement.

Comme je l'acquérir pour une très grande quantité de temps, j'ai effacer les données d'entrée sur chaque boucle (la 1001st point est stocké dans la 1ère rangée et ainsi de suite).

Voici ce que j'ai pour le moment, mais il conserve tous les points sur le graphique:

import matplotlib.pyplot as plt

def init_plot():
  plt.ion()
  plt.figure()
  plt.title("Test d\'acqusition", fontsize=20)
  plt.xlabel("Temps(s)", fontsize=20)
  plt.ylabel("Tension (V)", fontsize=20)
  plt.grid(True)

def continuous_plot(x, fx, x2, fx2):
  plt.plot(x, fx, 'bo', markersize=1)
  plt.plot(x2, fx2, 'ro', markersize=1)
  plt.draw()

J'ai appeler la fonction init fois, et le continous_plot est dans un processus, appelé à chaque fois que j'ai 1000 points dans mon tableau.

Avez-vous fait une tentative de programmer vous-même? Si oui, merci de partager votre code.

OriginalL'auteur CoMartel | 2014-07-16