Problem beim Plotten mehrer files

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
alex1990ge
User
Beiträge: 22
Registriert: Freitag 26. Juli 2013, 10:04

Hallo liebe Python-Gemeinde,

habe folgendes Problem:

ich habe mehrere Listen(als .txt files) in verschiedenen Unterverzeichnissen. All diese Listen sollen nun geplottet werden und der jeweilige Plot soll ebenfalls in dem entsprechenden Unterverzeichnis gespeichert werden.
Um dies zu realisieren nutze ich numpy und die matplotlib:

Code: Alles auswählen

 b = np.loadtxt("results/"+str(SD)+"sd/alc_datapoints"+str(SD)+".txt").T
 plt.plot(b)
 plt.savefig("results/"+str(SD)+"sd/alc_"+str(SD)+".ps")
Dabei ist SD eine Variable aus der Liste sd_list:

Code: Alles auswählen

sd_list = [0.7,0.8,0.9,1.0,1.3,1.5,1.8,2.0,5.0,8.0]
Das funktioniert auch, jedoch wird nur für den ersten Wert aus der Liste der Plot richtig erstellt. Für alle weiteren Werte wird jeweils der vorherige Plot mit dem neuen überschrieben.
Man hat dann für den letzten Wer 10 übereinander liegende plots.

Kann mir jemand erklären, warum das so ist, und mir einen Hinweis geben, was ich anders machen muss?

Vielen Dank,
Alex
Sirius3
User
Beiträge: 17778
Registriert: Sonntag 21. Oktober 2012, 17:20

@alex1990ge: Du erzeugst ja auch keine neuen Plots, sondern plottest immer in den selben. Es fehlt ein "plt.figure()".

Statt Dateinamen mit str und + zusammenzustückeln, solltest Du .format benutzen. Dann kannst Du auch sicher gehen, dass alle Zahlen nur eine Nachkommastelle haben.
Antworten