python 的 ggplot 不使用年号作为轴上的标签

python's ggplot does not use year number as label on axis

在下面的 MWE 中,我的 year 变量在 x 轴上显示为 0 到 6,而不是实际的年份数字。这是为什么?

import pandas as pd
from pandas_datareader import wb
from ggplot import *

dat = wb.download(
    indicator=['BX.KLT.DINV.CD.WD', 'BX.KLT.DINV.WD.GD.ZS'],
    country='CN', start=2005, end=2011)
dat.reset_index(inplace=True)

print ggplot(aes(x='year', y='BX.KLT.DINV.CD.WD'),
       data=dat) + \
    geom_line() + theme_bw()

您需要做的就是将 year 列从 object dtype 转换为 datetime64:

dat['year'] = pd.to_datetime(dat['year'])