使用日期作为x轴的Seaborn点图

时间:2017-10-10 03:22:18

标签: python datetime matplotlib plot seaborn

我正在尝试使用Seaborn生成基于数据收集日期分组的数据集的点图。

在玩了一段Seaborn积点之后,我意识到了一个问题:这些数据是在不同的日期收集的,但日期并不是均匀分布的。在我看来,在绘图过程中,Seaborn将日期视为分类变量。

image produced

我想知道是否有办法找到间距对应于日期间隔的数据?

2 个答案:

答案 0 :(得分:0)

请尝试以下操作将字符串日期转换为datetime个对象

import time
import datetime as dt
from datetime import datetime

def dateconvert(Start_date):
    try:
        Start_date = int(Start_date)  
        Date_String = str(Start_date)
        dateconv = dt.datetime.strptime(Date_String,'%YYYY-%mm-%dd').strftime('%d/%m/%Y')
        return  dateconv
    except ValueError:
        return Start_date #or '' or whatever you want to return for NULL

答案 1 :(得分:0)

在我看来,Seaborn并不支持datetime作为x变量,在这种情况下所有日期都被视为分类变量。这可能不是一个大问题,但它阻止我将回归线拟合到点。

我最终使用matplotlib.errorbar函数,使用numpy计算中值和标准差。它似乎不是一个理想的解决方案,但它起作用。 (仍然在回归趋势线上工作,但我现在很好。)

updated plot