matplotlib X-Achse scrollen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
george
User
Beiträge: 109
Registriert: Mittwoch 11. Januar 2006, 20:28
Wohnort: Berlin

Montag 31. März 2008, 19:03

Hallo,

ich bin gerade dabei mit matplotlib die ersten Gehversuche zu machen und bin von dem Tool echt beeindruckt.

Jetzt aber gleich mal eine Frage. Ich habe einen 2D Plot bei dem die X-Achse Werte von 0-10000 hat. Aus Gründen der Übersichtlichkeit zeige ich aber immer nur maximal 100 Messwerte an.
Jetzt möchte ich gerne, dass wenn z.B. ein Button betätigt wird, die Werte automatisch gescrollt werden(ähnlich wie bei einem laufenden Bild). Wie geht das am einfachsten? In der Toolbar gibt es hierfür den "PAN" Modus. Dann muss ich aber immer mit der Maus arbeiten. Ich möchte aber gerne, dass der Graph selbstständig durchläuft.

Habt ihr eine Idee??

Danke
George
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Dienstag 1. April 2008, 08:08

Hallo,

Wenn Du konkrete Hilfe möchtest, müßtest uns schon verraten, was Dein GUI-backend ist. Aber ganz allgemein: Mache Dir ein Button, das an eine Funktion gebunden ist, welche xlim in best. Zeitabschnitten verändert.

Gruß,
Christian
george
User
Beiträge: 109
Registriert: Mittwoch 11. Januar 2006, 20:28
Wohnort: Berlin

Dienstag 1. April 2008, 10:37

Hallo CM,

ich benutze wx als backend. Habe aber mittlerweise schon die Lösung gefunden.

Code: Alles auswählen

self.axes.xaxis.pan(-1)
self.canvas.draw()
self.canvas.Refresh(eraseBackground=False)
Mit der pan(...) Funktion kann man dann die Achsen laufen lassen(positiv oder negativ)

Gruss
george
Antworten