matplotlib Grundstück und warten Sie dann für raw-Eingabe

Ich versuche zu öffnen, eine Reihe von .png-plots. Ich möchte in der Lage sein, eine Handlung auf dem Bildschirm und bekomme dann eine Aufforderung, auf mich zu warten, um "drücken Sie enter". Auf enter drückst, wird der nächste plot angezeigt werden soll. Ich habe gesehen, dass viele Fragen ähnlich wie diese (Matplotlib - Force-plot-Anzeige und kehren Sie dann zum main code) aber wenn ich das mache habe ich dann auf manuell klicken Sie auf X oben rechts-hand-Seite des plot-Fenster, um es zu schließen und dann erst wird der code weiter.

Ich bin mit python 2.7.8

Hier ist mein code:

from PIL import Image
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import string
import sys
import shutil

fig=plt.figure()

Viewingfile = sys.argv[1]


for test_file in open(Viewingfile, "r").readlines(): 

    fig.set_tight_layout(True)
    plt.ion()
    image=mpimg.imread(test_file + ".ps.png")
    ax = fig.add_subplot(1, 1, 1)
    imgplot = plt.imshow(image)
    plt.show()

    print test_file
    a = raw_input('Next plot?\n')
    if a == "1":
        print "Do something..I've skipped these details"
    plt.clf()

plt.close()
  • Ich kann zwar die Frage nicht beantworten, wäre es möglich, eine ipython-notebook für dieses Projekt statt raw input? Das wäre immer noch lassen Sie die plot-inline und in Echtzeit.
  • Ich habe noch nie verwendet ipython notebook. Ich habe viele Bilder (Tausende), um durch zu suchen würde Sie notebook ratsam sein, sich für diese?
  • IMO macht es mehr Sinn. Speichern Sie die Bilder, die Sie behalten möchten (falls vorhanden) in das notebook, wie Sie gehen. Hier ist ein Beispiel, das zeigt Diagramme/Bilder in notebook: nbviewer.ipython.org/github/vanzaj/pyconsg2013-tut/blob/master/... Protip: wenn die Letzte Zeile eines notebook-Zelle ist ein Diagramm/Bild aufrufen, die Art des Objekts (z.B. AxesSubplot) ausgedruckt. Am Ende Ihrer letzten Aufruf in der Zelle mit einem Semikolon zu unterdrücken. EG: plt.plot(x,y);
InformationsquelleAutor user1958508 | 2014-10-02
Schreibe einen Kommentar