subprocess Befehl vereinfachen
Verfasst: Donnerstag 10. November 2011, 18:12
Liebes Forum,
Ich patche einen subprocess Aufruf zusammen. Der subprocess wird dazu verwendet, mit Gnuplot ein Diagramm zu erstellen. Dazu muss für Gnuplot zuerst eine kleine Anleitung geschrieben werden. Leider fällt mir da nichts besseres ein, als die Gnuplot Befehle in eine Datei zu schreiben, kann man die Befehle nicht direkt in den stdin vom subprocess streamen? Bzw, wenn ja, wie?
Hier mein Ansatz:
Das Diagramm wird erstellt, aber eben ich frage mich, wie ich mir das Schreiben des Mikro-Gnuplotskriptes sparen kann.
Vielen Dank für Hinweise.
Ich patche einen subprocess Aufruf zusammen. Der subprocess wird dazu verwendet, mit Gnuplot ein Diagramm zu erstellen. Dazu muss für Gnuplot zuerst eine kleine Anleitung geschrieben werden. Leider fällt mir da nichts besseres ein, als die Gnuplot Befehle in eine Datei zu schreiben, kann man die Befehle nicht direkt in den stdin vom subprocess streamen? Bzw, wenn ja, wie?
Hier mein Ansatz:
Code: Alles auswählen
gnuplot_script = "set terminal svg\n"
gnuplot_script += "set output \'%s.svg\'\n" % target
gnuplot_script += "plot \'%s.dat\'\n" % target
gnuplot_dat = open('gnuplot_script.gnu', 'w')
gnuplot_dat.write(gnuplot_script)
gnuplot_dat.close()
gnup = subprocess.Popen(['/usr/local/bin/gnuplot'], stdin=open('./gnuplot_script.gnu', 'r'), stderr=subprocess.PIPE, shell=False)
Vielen Dank für Hinweise.