Und zwar speicher ich per CronJob einmal pro Stunde ein paar Zahlenwerte in eine Datei.
Code: Alles auswählen
.......
13.11.14-10:00;15;19
13.11.14-12:00;4;23
13.11.14-14:00;35;21
13.11.14-16:00;71;17
......
Nur werden mit der Zeit immer mehr Daten in der Datei gespeichert (die Daten brauch ich evt erneut, so das ich diese nicht löschen will/kann)
Die Grafik soll aber nur die Daten der letzten 20 Zeilen erstellen.
Nun stellt sich mir die Frage wie ich es schaffe das eben nur diese Zeilen ausgelesen werden?
Hier mein Code der bislang läuft aber halt die komplette Datei einliest:
Code: Alles auswählen
def print_table(filename,delimiter):
data_lines=[]
result=""
with open(filename) as data_file:
data_lines=data_file.readlines()
for line in data_lines[:-1]:
x, y, z=line.strip('\n').split(delimiter)
result += "['"+x+"', "+y+", "+z+"],\n"
else:
x, y, z=data_lines[-1].strip('\n').split(delimiter)
result += "['"+x+"', "+y+", "+z+"]"
return result
Als zusätzliche Frage die auch in etwa in diesen Bereich geht noch die Frage:
Wie kann ich z.B. nur jede 5te Zeile einlesen? (Um so eine Grafik mit großerem Zeitfenster zu erhalten)