Ich versuche gerade anhand des Realtime-Plot Beispiels eine Art Software-Oszilloskop nachzubilden. Die darzustellenden Daten werden von einem DSP abgegriffen und sollen inkrementell gezeichnet werden, d.h. nur neue Punkte sollen der Kurve angehängt werden. Soweit funktioniert auch alles, nur werden manche Punkte nicht mit Linien verbunden, meist wenn diese einen hohen y-Wert aufweisen.
Es wird alle 64ms ein Paket mit 8 Signalwerten übermittelt und mit
Code: Alles auswählen
curvAmp->attach(plotSignal);
curvAmp->setData(xNew, yNew1, sigPos);
Gezeichnet wird mit
Code: Alles auswählen
curvAmp->draw(sigPos - 8, sigPos);
Es werden so also immer 8 Werte an die vorhandene Kurve angehängt.
Wird nach jedem zeichnen manuell plotSignal->replot() ausgeführt wird die Kurve korrekt und ohne Lücken gezeichnet. Allerdings flackert dann die Plot-Darstellung unschön.
Ich hoff es ist einigermaßen ersichtlich was ich vorhabe und vielleicht hat jemand ne Idee wie man das anders lösen könnte.
Gruß
maZe