我有一个数据框,其中索引是日期时间对象。 我创建了一个新列来指示数据框中每个“骑行”所在的月份:
import numpy as np
import datetime as dt
from datetime import datetime
months = df.index.to_series().apply(lambda x:dt.datetime.strftime(x, '%b %Y')).tolist()
df['months'] = months
df1 = df[['distance','months']]
这将得到:
当我尝试使用Seaborn将其绘制为折线图时,以月份作为x轴,它会按字母顺序排序,从四月开始,然后是八月等。l = sns.lineplot(x='months',y='distance',data=df1)
plt.xticks(rotation=45)
我不太明白为什么会这样,因为我使用的数据框中,月份已按照月份升序排序。有没有办法让我的x轴从Jan2018开始,以July2019结束?
l = sns.lineplot(x='months',y='distance',data=df1, sort=True)
吗? - Anna Nevisonsns.countplot(x='months',data=df1) plt.xticks(rotation=45)
时,使用完全相同的数据框,它会自动排序。 - Daichi