Übergeordnete For Schleife in Methode fortsetzen?
Verfasst: Donnerstag 4. August 2011, 20:49
Hi,
Ich hab da wieder mal ne Frage... teilweise zu Matplotlib, teilweise generell pyhton.
Ich hab ein Programm, das geht diverse Daten durch, und diese soll es dann plotten, undzwar bei jedem tastendruck einen anderen Datenatz. Bei escape soll es das Programm beenden. Letzteres klappt auch, aber das durchschalten will nicht so recht.
Hier ein beispiel:
Wenn ich escape drücke, wirds beendet, drück ich was anderes, wird der plot zwar geschlossen, aber es geht nicht weiter. Da wo #continue steht, müsste also was rein das das Programm dazu veranlasst zur nächsten iteration in der for schleife zu gehen. Wenn da aber nur continue steht, krieg ich den fehler das continue nicht in einem loop ist.
Könnt ihr mir sagen wie ich das lösen kann?
edit: Wenn ich eine taste drücke, wird das fenster geschlossen, und die Forschleife auch abgearbeitet, das sieht man wenn man sich x und y ausgeben lässt, aber es wird kein neues plotfenster aufgemacht.
Thx.
Ich hab da wieder mal ne Frage... teilweise zu Matplotlib, teilweise generell pyhton.
Ich hab ein Programm, das geht diverse Daten durch, und diese soll es dann plotten, undzwar bei jedem tastendruck einen anderen Datenatz. Bei escape soll es das Programm beenden. Letzteres klappt auch, aber das durchschalten will nicht so recht.
Hier ein beispiel:
Code: Alles auswählen
import matplotlib.pyplot as plt
import sys
x = [1,2]
y = [10,11]
lastx = 2
lasty = 11
for nummer in range(0,10):
def keypressed(event):
if event.key=='escape':
sys.exit()
else:
plt.close()
#continue
x.append(lastx+1)
lastx+=1
y.append(lasty+1)
lasty+=1
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x,y)
cid2 = fig.canvas.mpl_connect('key_press_event', keypressed)
plt.show()
Könnt ihr mir sagen wie ich das lösen kann?
edit: Wenn ich eine taste drücke, wird das fenster geschlossen, und die Forschleife auch abgearbeitet, das sieht man wenn man sich x und y ausgeben lässt, aber es wird kein neues plotfenster aufgemacht.
Thx.