如何用一天的x标签在seaborn中绘制时间序列?

时间:2017-07-05 15:30:09

标签: python seaborn

我有一个数据框,表示五天的时间序列,一天有48行数据,如:

   Density Value     start time
       0.328336  2012-01-16 00:00:00
       1.195605  2012-01-16 00:30:00
       2.398546  2012-01-16 01:00:00
       1.320956  2012-01-16 01:30:00
       1.292287  2012-01-16 02:00:00
       1.286741  2012-01-16 02:30:00
       ...
       0.199826  2012-01-20 23:00:00
       0.437794  2012-01-20 23:30:00

我尝试使用seaborn绘制时间序列图,其中一天只有一个标签在时间轴上,这意味着只有5个标签(从2012-01-16到2012-01-20) x轴上。我尝试了seaborn.tsplot sns.tsplot(data=density_list,time=start_time_list),但只获取了轴标签,如下图所示: enter image description here

我想知道如何在这种情况下获得我想要的x标签。谢谢!

1 个答案:

答案 0 :(得分:2)

感谢@ViníciusAguiar的建议,我按照Possible duplicate of Seaborn tsplot does not show datetimes on x axis well中的答案进行了修改并修改了它以获得我想要的标签。

当我使用DateTime.strptime(date + ' ' + time, '%d/%m/%Y %H:%M:%S') 时,我会得到enter image description here之类的结果,在我阅读docs之后,我尝试了ax.xaxis.set_major_locator(mdates.AutoDateLocator())并且它有效!

enter image description here