【发布时间】:2016-12-07 19:59:08
【问题描述】:
我想要一个散点图,其中 x 轴是 datetime,y 轴是 int。而且我只有几个离散且不连续的数据点,所以我不想连接数据点。
我的数据框是:
df = pd.DataFrame({'datetime':[dt.datetime(2016,1,1,0,0,0), dt.datetime(2016,1,4,0,0,0),
dt.datetime(2016,1,9,0,0,0)], 'value':[10, 7, 8]})
如果我使用“正常”图而不是“线”图:
df.plot(x='datetime', y='value')
但是我怎样才能只绘制点呢?这给出了错误:
df.plot.scatter(x='datetime', y='value')
KeyError: 'datetime'
当然我可以通过一些作弊来得到我想要的结果,例如:
df.plot(x='datetime', y='value', marker='o', linewidth=0)
但我不明白为什么scatter 版本不起作用...
感谢您的帮助!
【问题讨论】:
-
查看更多有用的答案,提供更好的数字日期转换或使用 pyplot.plot_date() 代替,github.com/pandas-dev/pandas/issues/18755
标签: python pandas plot scatter-plot