Hallo,
ich lasse mir mit python daten in subplots anzeigen. (siehe figure_1)
Dazu habe ich 8 Messungen am Tag über einen längeren Zeitraum gemacht (wird auch noch weiter gemessen). Diese werden in einer .csv gespeichert von wo ich mir die jetzt raus hole. Damit das weniger daten werden, habe ich dann schon für jeden Tag den Durchschnitt berechnet und lasse mir diesen dann anzegeigen.
Leider sind die Datums immer nohc sehr zusammengequetscht und ich würde mir gerne nur jeden 7. Tag mit einem Label anzeigen lassen.
Da komme ich aber absolut nicht weiter :/
Ich hätte es so gemacht:
fig, (ax1, ax2, ax3) = plt.subplots(3, sharex=True)
ax1.plot(time, speed)
ax1.set_title('speed [m/s]')
ax2.plot(time, energyWin)
ax2.set_title('energy win [J]')
ax3.plot(time, energyLoose)
ax3.set_title('energy loose [J]')
tick_indices = range(0, len(time), 7)
tick_labels = [time[i].strftime('%Y-%m-%d') for i in tick_indices]
plt.xticks(ticks=[time[i] for i in tick_indices], labels=tick_labels,
rotation=70, ha='right')
plt.show()
das sieht schon viel übersichtlicher aus. danke dir.
Wenn jetzt noch die kleinen striche da wären (für jeden x-tick), wäre es noch etwas übersichtlicher. Aber so kann man es schonmal sehr gut lesen und ich kann da mal etwas weiter rumprobieren.
das sieht schon viel übersichtlicher aus. danke dir.
Wenn jetzt noch die kleinen striche da wären (für jeden x-tick), wäre es
noch etwas übersichtlicher. Aber so kann man es schonmal sehr gut lesen
und ich kann da mal etwas weiter rumprobieren.
Danke dir :)
Irgendwas ist ja immer :D
Brauchst nur das hinzufügen :)
1
minor_tick_indices = range(0, len(time), 1) # macht jeden tag
2
# minor_tick_indices = range(0, len(time), 3) # hier jeden dritten tag
3
4
ax3.set_xticks([time[i] for i in minor_tick_indices], minor=True)