У меня есть следующий фрейм данных:
Year Month Value
2005 9 1127.080000
2016 3 9399.000000
5 3325.000000
6 120.000000
7 40.450000
9 3903.470000
10 2718.670000
12 12108501.620000
2017 1 981879341.949982
2 500474730.739911
3 347482199.470025
4 1381423726.830030
5 726155254.759981
6 750914893.859959
7 299991712.719955
8 133495941.729959
9 27040614303.435833
10 26072052.099796
11 956680303.349909
12 755353561.609832
2018 1 1201358930.319930
2 727311331.659607
3 183254376.299662
4 9096130.550197
5 972474788.569924
6 779912460.479959
7 1062566320.859962
8 293262028544467.687500
9 234792487863.501495
Как видите, у меня есть огромные значения, сгруппированные по месяцам и годам. Моя проблема в том, что я хочу создать линейный сюжет, но когда я делаю это, для меня это не имеет никакого смысла:
df.plot(kind = 'line', figsize = (20,10))

Визуальное представление данных не имеет большого смысла, принимая во внимание, что значения колеблются в течение месяцев и лет, но для большей части периода и большой вершины в конце показана плоская линия.
Я полагаю, что проблема может быть в шкале оси Y, которая некорректно подгоняет данные. Я попытался применить преобразование журнала к оси y, но это не добавляет никаких изменений, я также попытался нормализовать данные между 0 и 1 только для теста, но график все тот же. Любые идеи о том, как получить более точное представление моих данных за период времени? А также, как я могу отобразить название месяца и года на оси х?
РЕДАКТИРОВАТЬ:
Вот как я применил преобразование журнала:
df.plot(kind = 'line', figsize = (20,10), logy = True)
и вот результат:

для меня этот график все еще не очень читабелен, учитывая, что нанесенные значения представляют доход за определенное время, и применение логарифмического преобразования к денежным значениям для меня все равно не имеет большого смысла.
Вот как я нормализовал данные:
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
df_scaled = pd.DataFrame(scaler.fit_transform(df), columns=df.columns)
df_scaled.set_index(df.index, inplace = True)
А потом я построил это:
df_scaled.plot(kind = 'line', figsize = (20, 10), logy = True)

Как вы можете заметить, при этом, кажется, что ситуация меняется, я немного растерялся из-за того, как правильно визуализировать эти данные за заданные периоды времени.