Färben von Datenpunkten je nach Monat [Duplikat]Python

Python-Programme
Guest
 Färben von Datenpunkten je nach Monat [Duplikat]

Post by Guest »

Ich habe einen DataFrame mit einer Datumsspalte und einer Wertespalte. Der Datumsbereich reicht von 2015 bis 2024 und die Werte haben eine Auflösung von einer Stunde. Dadurch ergeben sich sehr viele Werte.
Meine Idee ist nun, die Daten in einem Diagramm (Streuung) darzustellen und gleichzeitig die einzelnen Datenpunkte je nach Monat einzufärben. Beispielsweise sind alle Januar-Werte (2015, 2016 ... 2024) rot eingefärbt, alle Februar-Werte (2015, 2016 ... 2024) sind gelb eingefärbt usw.
Ich habe bereits Folgendes versucht:

Code: Select all

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import datetime as dt

start_date = '2014-01-01'
end_date = '2016-02-01'
data_range = pd.date_range(start=start_date, end=end_date, freq ='H')
values = np.random.randint(-100,101, size = len(data_range))
df = pd.DataFrame({'date': data_range,'Preis [€/MWh]': values})

df['month'] = df['date'].dt.month
df['month_name'] = df['date'].dt.month_name(locale='German')
colors = {'Januar': 'red','Februar': 'mediumvioletred', 'März': 'darkviolet', 'April': 'blueviolet','Mai': 'blue','Juni': 'cadeblue', 'Juli': 'green', 'August':'greenyellow', 'September': 'yellow', 'Oktober': 'gold', 'November': 'orange', 'Dezember': 'coral'}
df['colors'] = df['month_name'].map(colors)

plt.scatter(df['date'], df['Preis [€/MWh]'], color = df['colors'])
Dies führt zu einem Fehler.
Hat jemand eine Idee, wie ich das beheben könnte? Vielen Dank im Voraus!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post