Месяц, год с графиком стоимости, панды и MatPlotLib - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть DataFrame с месяцем, годом и значением, и я хочу сделать график TimeSeries.

Образец:

month   year    Value
12      2016    0.006437804129357764
1       2017    0.013850880792606646
2       2017    0.013330349031207292
3       2017    0.07663058273768052
4       2017    0.7822831457266424
5       2017    0.8089573099244689
6       2017    1.1634845000200715

я пытаюсь построить эти данные значения с помощью года и месяца, года и месяца по оси X и значения по оси Y.

Ответы [ 2 ]

0 голосов
/ 12 ноября 2018

Один из способов это:

import pandas as pd
import matplotlib.pyplot as plt

df['date'] = df['month'].map(str)+ '-' +df['year'].map(str)
df['date'] = pd.to_datetime(df['date'], format='%m-%Y').dt.strftime('%m-%Y')
fig, ax = plt.subplots()
plt.plot_date(df['date'], df['Value'])
plt.show()

enter image description here

0 голосов
/ 12 ноября 2018

Вам нужно установить индекс DateTime для панд, чтобы правильно построить ось. Модификация в одну строку для вашего фрейма данных (при условии, что вам больше не нужны year и month в качестве столбцов, и первый день каждого месяца будет правильным):

df.set_index(pd.to_datetime({
    'day': 1,
    'month': df.pop('month'),
    'year': df.pop('year')
}), inplace=True)

df.Value.plot()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...