Отображение времени и температуры данных по зонам.Импорт csv и переформатирование в сводную таблицу для построения отличительных столбцов:
in: dfpiv2 = df.pivot(index = 'target_logtime', columns = 'valuekey', values = 'value')
out:
valuekey 5575 5579 5583 5587 5591 5599 5603 5607 5611 5615
target_logtime
2016-02-01 00:00:00 22.87 21.87 19.68 18.18 10.43 19.93 18.93 19.00 19.18 19.62
2016-02-01 00:30:00 22.43 21.50 19.56 17.87 10.43 19.68 18.87 18.93 19.00 19.37
2016-02-01 01:00:00 22.18 21.25 19.43 17.62 10.43 19.50 18.81 18.87 18.81 19.12
2016-02-01 01:30:00 21.87 21.00 19.31 17.37 10.43 19.31 18.81 18.81 18.68 18.93
2016-02-01 02:00:00 21.68 20.75 19.18 17.18 10.37 19.12 18.75 18.75 18.50 18.75
Все, кажется, работает нормально, однако мой столбец target_logtime, который я хочу использовать на оси x, кажется, исчезает:
in: dfpiv2.columns
out: Int64Index([5575, 5579, 5583, 5587, 5591, 5599, 5603, 5607, 5611, 5615], dtype='int64', name='valuekey')
Что, я думаю, является причиной ...
AttributeError: 'DataFrame' object has no attribute 'target_logtime'
Вот полный код, который я использую:
import pandas as pd
df = pd.read_csv('******.csv')
dfpiv2 = df.pivot(index = 'target_logtime', columns = 'valuekey', values = 'value')
import plotly
plotly.tools.set_credentials_file(username='********', api_key='*******')
import plotly.plotly as py
import plotly.graph_objs as go
#import dataset
# define x and y
x = dfpiv2.target_logtime
y1 = dfpiv2[5575]
# create a trace
trace1 = go.Scatter(
x = x,
y = y1,
mode = 'lines',
name = '5575'
)
data = [trace1]
py.iplot(data, filename='basiclinetest')
Спасибо за любую помощь!