Пример Dataframe Я имею дело со следующим.
df_sub = pd.DataFrame([[2020-01-01, 2019-01-02, 2018-01-15, 2017-01-18], [2019, 2018, 2017, 2016], [15, 9, 39, 20]], columns=['GAME_DATE', 'SEASON', 'PTS')
- В каждом СЕЗОНЕ есть около 20-30 точек данных для GAME_DATE и POINTS. Это будет варьироваться в зависимости от того, что выбрано на другом фрейме данных, DF
- GAME_DATE - это столбец даты и времени
Я хочу создать один сюжет с game_date по оси x, точки на y - ось и одна линия, нанесенная для каждого сезона.
Попробовал следующее, но не достиг того, что я хочу, поскольку он строит данные каждого сезона последовательно с пропусками, когда есть перерыв. Я хочу, чтобы каждый сезон наносился на отдельную линию, в то время как для каждого года используется постоянная ось х, а не для каждого года.
ax = sns.lineplot(x = 'GAME_DATE', y = 'PTS', hue = 'SEASON', markers = True, dashes = False, data = df_sub)
Выяснилось, что мне нужно извлечь месяц и день от GAME_DATE для X-AXIS, так как СЕЗОН уже позаботился о компоненте год / сезонность
df_sub['SEASONAL'] = df_sub['GAME_DATE'].dt.strftime('%m-%d')
, что делает работу с точки зрения извлечения месяца, однако, при построении графика со следующим - график создан такое абсолютный беспорядок
ax = sns.lineplot(x = 'SEASONAL', y = 'PTS', hue = 'SEASON', markers = True, dashes = False, data = df_sub)
Думаешь, мне нужно преобразовать df_sub ['SEASONAL'] в столбец datetime из его текущего типа как ненулевой объект? Тем не менее, попытка выполнить следующее вставляет год назад в каждую запись сезонного столбца (1900 год ... ухххх)
df_sub['SEASONAL'] = pd.to_datetime(df_sub['SEASONAL'], format = "%m-%d")
Цените любую помощь