Python 根据同一绘图上的日期绘制多个数据集

Python 根据同一绘图上的日期绘制多个数据集,python,pandas,datetime,matplotlib,Python,Pandas,Datetime,Matplotlib,我正在尝试使用matplotib/pandas绘制变量(y轴)作为日期(x轴)的函数。下面的简单代码片段适用于一个跟踪/一组数据: import datetime as dt fig = plt.figure() dates = grouping_data_for_profit_trace["date"] x = [dt.datetime.strptime(d,'%Y-%m-%d').date() for d in dates] y = grouping_data_for_profit_t

我正在尝试使用matplotib/pandas绘制变量(y轴)作为日期(x轴)的函数。下面的简单代码片段适用于一个跟踪/一组数据:

import datetime as dt

fig = plt.figure()

dates = grouping_data_for_profit_trace["date"]

x = [dt.datetime.strptime(d,'%Y-%m-%d').date() for d in dates]
y = grouping_data_for_profit_trace["variable"]

plt.plot(x,y)

plt.xticks(rotation=30)

plt.show()

但是,我想在同一个绘图上绘制多个数据集。如果我把上面的代码放到一个循环中,简单地重新计算并绘制每个循环迭代/数据集的x和y,即

loop...

    #fig = plt.figure() - now commented out
    x = [dt.datetime.strptime(d,'%Y-%m-%d').date() for d in dates]
    y = grouping_data_for_profit_trace["variable"]
    plt.plot(x,y)
    plt.xticks(rotation=30)
我开始看到我不理解的奇怪错误

---> 53         plt.xticks(rotation=30)
.....
ValueError: ordinal must be >= 1

有人能评论一下为什么会发生这种情况,或者就如何在同一绘图上根据x轴日期绘制两组数据提出建议吗?

我猜您使用的是熊猫?什么版本?是的编辑问题以反映问题。我使用的是python 2.7和pandas 0.18.1问题/答案似乎表明pandas的版本中存在一个bug。大卫,你可能想升级你的熊猫版本!我现在就试试。谢谢和往常一样,我们的想法是为这个问题提供一个解决方案。通过这种方式,你可以确保每个人都在谈论同样的事情,同时也可以让潜在的解决方案更容易地帮助你。帮助别人总是一个很好的姿态。非常具体地说,我不确定这里是否需要使用
plt.xticks
。你需要那条线吗?不使用时是否存在问题?你的问题是关于旋转蜱虫吗?我想你是在用熊猫吧?什么版本?是的编辑问题以反映问题。我使用的是python 2.7和pandas 0.18.1问题/答案似乎表明pandas的版本中存在一个bug。大卫,你可能想升级你的熊猫版本!我现在就试试。谢谢和往常一样,我们的想法是为这个问题提供一个解决方案。通过这种方式,你可以确保每个人都在谈论同样的事情,同时也可以让潜在的解决方案更容易地帮助你。帮助别人总是一个很好的姿态。非常具体地说,我不确定这里是否需要使用
plt.xticks
。你需要那条线吗?不使用时是否存在问题?你的问题是关于旋转滴答声吗?