我想生成一个简单的散点图,其中X轴为日期,Y轴为数值,我遇到类型提升错误。 数据来自大熊猫数据帧。
这是我在
中的一小部分值X(熊猫系列):
....
179 2016-11-08 18:03:00
180 2016-11-08 18:16:00
181 2016-11-08 18:18:00
182 2016-11-08 18:19:00
183 2016-11-08 18:20:00
184 2016-11-08 18:21:00
名称:日期,长度:185,dtype:datetime64 [ns]
Y轴不是问题:
....
180 18.266667
181 18.300000
182 18.316667
183 18.333333
184 18.350000
长度:185,dtype:float64
如果我这样做:
plt.scatter(X,Y)
plt.show()
我收到类型促销错误。 谢谢你的帮助!
答案 0 :(得分:3)
您收到此错误是因为plt.scatter()
仅接受列表作为参数,您需要先使用pandas.Series.tolist()
将X数据转换为列表,然后对其进行分散。假设您的数据是Pandas DataFrame,其中df['dates']
是您的日期列,df['values']
是您的值列:
plt.scatter(df['dates'].tolist(), df['values'])
plt.show()