Plotten von Zeitachse gegen Werte

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
ff123
User
Beiträge: 6
Registriert: Montag 1. Oktober 2018, 17:18

Hallo zusammen,

ich stehe leider erneut vor einer Herausforderung die ich derzeit nicht gemeistert bekomme. Aber ich würde es gerne von Anfang an richtig machen und nicht am Ende irgendwie zurecht fuschen. Ich habe einen Datensatz mit einem Timestamp. Die ersten 10 Zeilen dazu sehen so aus:
Delivery Date PriceEUR/MWh
0 2015-01-01 00:00:00 25.02
1 2015-01-01 01:00:00 18.29
2 2015-01-01 02:00:00 16.04
3 2015-01-01 03:00:00 14.60
4 2015-01-01 04:00:00 14.95
5 2015-01-01 05:00:00 14.50
6 2015-01-01 06:00:00 10.76
7 2015-01-01 07:00:00 12.01
8 2015-01-01 08:00:00 12.39
9 2015-01-01 09:00:00 14.04

Das ganze besteht aus ca 8000 Daten. Wenn ich das ganze nun plotte, dann bekomme ich nur mArkiereungen in 2000er Schritten. Ich hätte die Daten jedoch gerne mit der ANgabe der Monate geplottet. Kann mir von euch jemand weiterhelfen?

Anbei noch der Code bis zum Plot:

import pandas as pd
import numpy as np
import matplotlib.pylab as plt
from matplotlib import pyplot

from matplotlib.pylab import rcParams
rcParams['figure.figsize'] = 15, 6

data = pd.read_csv('PhelixPowerSpotHistory_2015.csv')
data['Delivery Date']=pd.to_datetime(data['Delivery Date'])
#data['Time']= pd.to_datetime(data.DeliveryDate)
#print (data.head())
print(data.head(10))
from datetime import datetime
ts = data['PriceEUR/MWh']
print(ts.head(10))

#Ausgabe des Graphen im tutorial fehlen an dieser Stelle die letzten beiden Zeilen sonst wurd nichts angezeigt (plt.show) notwendig um wirklich etwas anzuzeigen
import matplotlib.pyplot as plt
plt.plot(ts)
plt.ylabel('€/MWh')
plt.show()




Schon mal Vielen Dank für eventuelle Hilfe
Bolitho
User
Beiträge: 219
Registriert: Donnerstag 21. Juli 2011, 07:01
Wohnort: Stade / Hamburg
Kontaktdaten:

Bitte die code-Tags verwenden. Danke.

Erstmal schau dir mal an, wie du die Daten plottest:

Code: Alles auswählen

...
plt.plot(x,y)
...
Und dann kannst du in der Dokumentation nach Möglichkeiten für die X-Achse suchen - hint: set_major_formatter & set_major_locator.

Sag Bescheid, wenn du nicht weiter kommst.
Antworten