Daten aus Datei plotten

3.2. Daten aus Datei plotten#

Diese Aufgabe kombiniert das Auslesen von Daten aus einer Datei mit einer graphischen Ausgabe.

Aufgabenstellung#

In der Datei niederschlag_rom.txt finden Sie die Regenstatistik von Rom gemittelt für jeden Monat über ein Zeitintervall von 1782 bis 1970. Die ersten Zeilen der Datei sind Kommentarzeilen, die die Randbedingungen und den Aufbau der Messdatei beschreiben. Schreiben Sie ein Programm, das die Messdaten mit Legende graphisch darstellt. In dieser Aufgabe soll die x-Achse eine besondere Beschriftung bekommen. Dabei sollen die Namen der Monate verwendet werden.

Lösungshinweis#

Die Beschriftung der Skala einer Achse, z.B. der x-Achse, kann mit der Funktion xticks angepasst werden.

Ihre Darstellung der Daten könnte folgendermaßen aussehen:

../../../../_images/57fa6c7f4d4d6f31746205ad33774c241d157534c6cb27b077b11e35987f0987.png

Lösungsvorschlag#

Hide code cell content
import matplotlib.pyplot as plt

monat = []
regen = []
datafile = open('niederschlag_rom.txt')

# Ueberspringen der 3 Kommentarzeilen
datafile.readline()
datafile.readline()
datafile.readline()

# Aufteilen der Messwerte in zwei listen
for line in datafile:
    line = line.strip('\n').split('; ')
    monat.append(float(line[0]))
    regen.append(float(line[1]))
datafile.close()

plt.figure(figsize=(8,6))

# Plotten der Messwerte
plt.plot(monat, regen, 'bo-', lw=2, label='Regen in Rom')
plt.legend(loc=0)
plt.grid()
plt.xlabel('Zeit / Monat')
plt.ylabel('Regen / mm')
plt.title('Regen in Rom gemittelt von 1782 bis 1970')
plt.xlim([1,12])
plt.ylim(ymin=0)
plt.xticks(monat, ['Jan.','Feb.', 'Mar.', 'Apr.', 'Mai', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Okt.', 'Nov.', 'Dez.'])
plt.show()
../../../../_images/57fa6c7f4d4d6f31746205ad33774c241d157534c6cb27b077b11e35987f0987.png