2016-07-14 4 views
0

Mein Python-Skript läuft auf einem Raspberry Pi und liest Spannungsdaten mit 12000 Samples pro Sekunde in Teilen von 1200 Samples aus einem LabJack U3. Diese Daten werden in einer Liste gespeichert, und eine Zeitliste mit Werten, die jedem Spannungspunkt entsprechen, wird künstlich erzeugt, indem auf die Spannungsdaten-Lesegeschwindigkeit Bezug genommen wird. Was ist der beste Weg, um diese Daten (Spannung gegen Zeit) in pyqtgraph grafisch darzustellen? Ich kann bereits jeden Datenblock (1200 Samples) so zeichnen, wie sie hereinkommen, aber ich brauche eine Möglichkeit, viele dieser Chunks nacheinander im selben Plotfenster zu plotten, um eine bessere Vorstellung davon zu bekommen, wie sich die Spannung im Laufe der Zeit verändert .Wie Daten, die mit 12 kHz in pyqtgraph auf Raspberry Pi gelesen werden, plotten?

Ich habe die Scrolling-Plot-Beispiele aus der pyqtgraph-Dokumentation als Leitfaden verwendet, hatte aber Probleme beim Plotten der Daten, da sie als Chunks statt als einzelne Punkte kommen. Ich muss wegen der Pixeldichte des Monitors sowie seiner Bildwiederholfrequenz nicht mit vollen 12KHz plotten, sondern bin an diesem Punkt steckengeblieben. Kann jemand einen guten Weg vorschlagen, fortzufahren?

Danke für Ihre Hilfe.

Antwort

0

Wenn Sie, wie Sie sagen, die ganzen 12000 Samples nicht plotten müssen, können Sie sie abtasten. Die Methode macht genau das. Oder du kannst es selbst mit Numpy machen.

Es gab einige SO Post zu diesem Thema vor, also würde ich ein wenig suchen. Zum Beispiel this one, die vorschlägt, die Daten in einem Ringpuffer (a collections.deque) zu speichern. Dies kann nützlich sein, wenn Sie einen Scroll-Plot wünschen.