Как нарисовать столбец данных dtype = datetime64 [ns] на оси x на графике? - PullRequest
0 голосов
/ 20 мая 2018

Я хотел нарисовать два временных ряда на одном сюжете matplotlib.У меня есть pandas dataframe , как показано здесь Где столбец Date имеет тип dtype = datetime64 [ns] как ось x, а столбец Close, Open имеет тип = np.float64 как ось y

Я пытаюсь код

import matplotlib as plt
plt.xticks( df['Index'].values)
plt.plot(df['Close'])
plt.plot(df['Open'])
plt.show()

Но он показывает ошибки.Где я должен улучшить ??

1 Ответ

0 голосов
/ 20 мая 2018

Чтобы отобразить только некоторые столбцы вашего df (в этом примере 'col1' и 'col2'), вы можете сделать это:

import matplotlib.pyplot as plt
import pandas as pd
df = pd.DataFrame([[10,11, 3,'2018-04-02 20:30'], [15, 20, 5, '2018-04-02 20:31'], [20, 25, 6, '2018-04-02 20:40'], [10, 12, 8, '2018-04-02 20:45']], columns = ['col1', 'col2', 'col3' ,'Dates'])
print (df)

   col1  col2  col3             Dates
0    10    11     3  2018-04-02 20:30
1    15    20     5  2018-04-02 20:31
2    20    25     6  2018-04-02 20:40
3    10    12     8  2018-04-02 20:45

df['Dates'] = pd.to_datetime(df['Dates'], format='%Y-%m-%d %H:%M')
df.set_index(['Dates'],inplace=True)
df.loc[:,['col1','col2']].plot()
plt.show()

В вашем случае это должно работать:

df.loc[:,['Open','Close']].plot()
...