Python 3D绘图与日期

时间:2017-04-12 22:00:46

标签: python date pandas matplotlib plot

我正在尝试制作具有以下轴的3D散点图:价格,时间和日期。基本上我想绘制一天的价格与时间的关系,然后在多天内完成,并将它们堆叠在一个轴上。

这是我到目前为止的代码:

 df=pd.read_csv("C:\\Desktop\\dat.csv")
 date=  df['date'].unique()
 dfd = pd.DataFrame(date)
 days= dfd.sort_values(0)

 fig= plt.figure()
 ax= fig.add_subplot(111, projection= '3d')

 xx = np.arange(len(days[0]))
 ys = [i+xx+(i*xx)**2 for i in range(len(days[0]))]
 colors = cm.rainbow(np.linspace(0, 1, len(ys)))

 for d,cc in zip(days[0],colors):

     td= df.loc[df['date'] == d]
     st= td[['time','price']]

     x = st['time']         
     y = st['price']

     x=list(x)
     y=list(y)
     ax.scatter(x,y,d,color=cc)

 plt.show()

主要问题是x是一个有时间的列表,而d是一个日期。当我运行代码matplotlib抛出一个错误说“ValueError:float()的无效文字:9:30:01”

日期格式如下:2017.04.12,时间格式:9:30:01

我知道我可以为日期设置刻度标签,但我该如何处理时间?

如果轴索引包含日期和时间,我该如何绘制这个3d图?

0 个答案:

没有答案