Pandas plotting:ValueError:ordinal应该是> = 1

时间:2015-05-15 10:03:09

标签: python pandas matplotlib

我有以下系列,名为sr

In [1]: sr
Out[1]: 0     0
        1     0
        2     0
        3     0
        4     0
        5     1
        6     2
        7     4
        8     7
        9     4
        10    3
        11    2
        12    1
        13    2
        14    2
        15    2
        16    4
        17    7
        18    7
        19    5
        20    3
        21    2
        22    1
        23    1
        dtype: int64

我想绘制这个系列,连同滚动的意思。为此,我使用以下代码:

import matplotlib.pyplot as plt
import pandas as pd

rolling = pd.rolling_mean(sr, 3, center=True)
ax_delays = sr.plot(style='--', color='b')
rolling.plot(color='b', ax=ax_delays, legend=0)
plt.title('Title')
plt.ylim(ymax=10)
plt.show()

但是这给了我以下错误:

ValueError                                Traceback (most recent call last)
      1 rolling = pd.rolling_mean(sr, 3, center=True)
----> 2 ax_delays = sr.plot(style='--', color='b')
      3 rolling.plot(color='b', ax=ax_delays, legend=0)
      4 plt.title('Title')
      5 plt.ylim(ymax=10)

ValueError: ordinal must be >= 1

这个错误意味着什么,我该如何解决?

1 个答案:

答案 0 :(得分:4)

如果你运行plt.clf()这将清除内存中的图并可能允许绘图继续进行(当我在中断绘图程序后遇到此错误时为我工作)。