我有一个 datetime indexex 数据框,我想从中为特定年份的特定周绘制一些特定列。
我决定在我的原始数据框中创建一个周、年、月和日列,并使用它们来定位我想要绘制的特定数据。
file = 'data.csv'
df = pd.read_csv(file,sep=";", header=0, na_values=['NA', ' ' , '.'])
df['date']=pd.to_datetime(df['date'])
df["datetime"] = df["date"]
df['year']=df['date'].dt.year
df['month']=df['date'].dt.month
df['day']=df['date'].dt.day
df['week']=df['date'].dt.isocalendar().week
df=df.set_index(['date'])
test=df[(df['year']==2019)&(df['week']==1)&(df['month']==1)]
test.plot(y='column_name', x='day')
test.plot(y='column_name',use_index=True)
它运作良好,我得到了这样的东西:
我的问题是:如何设置 x 轴来计算日期名称(星期一、星期二...)而不是数字 1、2、3 等...
编辑:第二个问题,即使这些数据集的大小不同,有没有办法在同一个图形上放置几周(一年中的第一周只有 6 天,因为第一天是星期二)