Listen aus .dat Datei erstellen
Verfasst: Montag 9. Dezember 2019, 13:55
Guten Tag zusammen,
ich weiß bei folgendem Problem nicht, wie ich weiter vorgehen soll. Ich habe eine .dat Datei, unten ist ein kleiner Ausschnitt daraus und ich möchte Listen erstellen, mit denen sich das ganze grafisch darstellen lässt. Also eine für die Zeit t und die jeweiligen Koordinaten. Bei meinem unteren Versuch ist das ganze zwar bereits als Array dargestellt, aber hieraus, kann ich mir nicht die erste Spalte für die Zeit ausgeben lassen. Der Grund hierfür ist vermutlich, dass das entstandene Array nur eindimensional ist. Ich habe anschließend mit 'shape' herumexperimentiert, aber bin auf keine Lösung gestoßen, die funktioniert... Habt ihr Ideen, was zu tun ist. Vielen Dank schonmal für evt. Hilfe!
ich weiß bei folgendem Problem nicht, wie ich weiter vorgehen soll. Ich habe eine .dat Datei, unten ist ein kleiner Ausschnitt daraus und ich möchte Listen erstellen, mit denen sich das ganze grafisch darstellen lässt. Also eine für die Zeit t und die jeweiligen Koordinaten. Bei meinem unteren Versuch ist das ganze zwar bereits als Array dargestellt, aber hieraus, kann ich mir nicht die erste Spalte für die Zeit ausgeben lassen. Der Grund hierfür ist vermutlich, dass das entstandene Array nur eindimensional ist. Ich habe anschließend mit 'shape' herumexperimentiert, aber bin auf keine Lösung gestoßen, die funktioniert... Habt ihr Ideen, was zu tun ist. Vielen Dank schonmal für evt. Hilfe!
Code: Alles auswählen
import numpy as np
import matplotlib.pyplot as plt
def is_float(string):
try:
return float(string)
except ValueError:
return False
data = []
with open('meineDatei.dat') as f:
d = f.readlines()
for i in d:
k = i.rstrip().split(",")
data.append([float(i) if is_float(i) else i for i in k])
data = np.array(data)
print(data)
Code: Alles auswählen
#iterations timestep tmax
10001 0.001 10
# Sun Earth Jupiter
#t x y z x y z x y z
0.000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 5.2000 0.0000 0.0000
0.001 0.0000 0.0000 0.0000 1.0000 0.0063 0.0000 5.2000 0.0023 0.0000
0.002 0.0000 0.0000 0.0000 0.9999 0.0126 0.0000 5.2000 0.0046 0.0000
0.003 0.0000 0.0000 0.0000 0.9998 0.0188 0.0000 5.2000 0.0068 0.0000
0.004 0.0000 0.0000 0.0000 0.9997 0.0251 0.0000 5.2000 0.0091 0.0000