Plot - x 必须是标签或位置

Plot - x must be a label or position

我有一个 DataFrame df 如下

      Date     Confirmed    Deaths  Recovered
0   2020-01-30    1           0         0
1   2020-01-31    0           0         0
2   2020-02-01    0           0         0
3   2020-02-02    1           0         0
4   2020-02-03    1           0         0

在尝试绘制日期 VS 确认时

df.plot(kind ='line',x='Date',y='Confirmed')

我收到以下错误

ValueError: x must be a label or position

列的数据类型是

Date         object
Confirmed     int64
Deaths        int64
Recovered     int64
dtype: object
df['Date']=pd.to_datetime(df['Date'])

尝试将日期列的数据类型从对象更改为 datetime64[ns] 数据类型。

PS:不要忘记将 pandas 导入为 pd。 ↓

import pandas as pd

您的代码片段非常好。 我怀疑数据框本身的 Date 列的实例类型存在问题。

试试这个:

from pandas.core.dtypes.generic import ABCSeries
print(isinstance(df["Date"], ABCSeries))

如果此 returns False,您可以确定日期列不是使用数据框中的正确实例类型创建的。 您可以尝试使用 pd.to_datetime()

将日期列转换为日期时间对象