Les Données En Direct Monitor: PyQtGraph

Je suis en train de travailler sur un projet où je dois analyser les signaux en provenance d'un appareil. J'ai une bibliothèque de travail qui me récupère les données de l'appareil. Pour l'instant, je suis à la collecte de données, puis de les tracer. Je suis intéressée par la construction d'un vivre données moniteur qui peut tracer un graphique en temps réel. Sur la recherche, j'ai compris PyQtGraph est idéal pour la tâche. Je ne suis pas familier avec Qt, je suis à la recherche pour les exemples qui je peux modifier à mes besoins. Certains des exemples donnés dans PyQtGraph docs mise à jour de l'intrigue en temps réel, MAIS j'ai besoin de quelque chose comme un moniteur live - lorsque le graphe est en mouvement vers la droite, comme il continue à recevoir des données.

Si quelque chose comme connu une fonction continue, je peux mettre à jour l'entrée x - w*t avec t être le temps de façon à obtenir la vague se déplaçant vers la droite. Mais c'est discret données, donc je ne suis pas sûr de savoir comment le faire fonctionner à l'aide de PyQtGraph. Donc, ce serait formidable si quelqu'un pouvait donner quelques conseils sur la façon d'aller à ce sujet.

Comme de maintenant, c'est ce que j'ai

Code

app = QtGui.QApplication([])
#mw = QtGui.QMainWindow()
#mw.resize(800,800)

win = pg.GraphicsWindow(title="Basic plotting examples")
win.resize(1000,600)
win.setWindowTitle('pyqtgraph example: Plotting')

# Enable antialiasing for prettier plots
pg.setConfigOptions(antialias=True)

p6 = win.addPlot(title="Updating plot")
curve = p6.plot(pen='r')
X_axis = numpy.linspace(0,100,12800)
#'data' is my required y_axis containing 12800 values
ydata = np.array_split(data,50)
xdata = np.array_split(X_axis,50)
ptr = 0
def update():
    global curve, data, ptr, p6
    curve.setData(xdata[ptr%50],ydata[ptr%50])
    ptr += 1
timer = QtCore.QTimer()
timer.timeout.connect(update)
timer.start(1000)

C'est la mise à jour des données pour chaque 2 seconde d'intervalle, mais je veux que ça se déplacer vers la droite.

OriginalL'auteur user1955184 | 2014-06-13