带日期的Python 3D绘图
我正在尝试制作一个三维散点图,它有以下轴:价格、时间和日期。基本上,我想绘制一天的价格和时间,然后在多天内这样做,并将它们堆叠在一个轴上 以下是我目前掌握的代码:带日期的Python 3D绘图,python,date,pandas,matplotlib,plot,Python,Date,Pandas,Matplotlib,Plot,我正在尝试制作一个三维散点图,它有以下轴:价格、时间和日期。基本上,我想绘制一天的价格和时间,然后在多天内这样做,并将它们堆叠在一个轴上 以下是我目前掌握的代码: 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_subpl
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: invalid literal for float(): 9:30:01
日期格式如下:2017.04.12,时间格式:9:30:01
我知道我可以为日期设置勾号标签,但我如何处理时间
如果轴索引包含日期和时间,如何打印此3d打印?matplotlib 3d无法打印日期。这里给出了一个可能的解决方案:这些问题的可能副本有助于日期,但它们没有解释如何将时间字符串列表转换为matplotlib可以使用的格式。日期和时间之间没有区别。您可以通过提问来说明将时间转换为数字的具体问题所在。(确保提供没有任何外部数据的,以便人们可以运行您的代码。)