【问题标题】:Pandas plot with only tow dates as index熊猫图只有两个日期作为索引
【发布时间】:2021-11-30 02:41:42
【问题描述】:

我有这个以日期为索引的简单 pandas 数据框:

df=pd.DataFrame({'a':[20,30,12],'b':[15,18,18]},index=['2021-10-7','2021-10-8','2021-10-9']) df.index=pd.to_datetime(df.index) 当我尝试在 xaxis 中用 只有两个日期 绘制一个简单的 pandas.plot

df.iloc[-2:].plot()

它给了我下面的图,轴上有很多数字

如果我绘制整个数据库,绘图工作正常:db.plot()

感谢您的支持

【问题讨论】:

    标签: pandas datetime plot


    【解决方案1】:

    您可以在设置索引后添加以下行以使其正常工作。

    df.index.freq = 'D'
    

    所以你的整个代码如下所示:

    df=pd.DataFrame({'a':[20,30,12],'b':[15,18,18]},index=['2021-10-7','2021-10-8','2021-10-9']) 
    
    df.index  = pd.to_datetime(df.index)
    
    df.index.freq = 'D'
    

    或者:

    您也可以使用 date_range,如下所示: 请注意,只有当您的数据与提供的数据一样具有每日频率时,这才有效,您需要在频率不同的情况下进行调整。

    df=pd.DataFrame({'a':[20,30,12],'b':[15,18,18]},index=['2021-10-7','2021-10-8','2021-10-9']) 
    
    df.index=pd.date_range(start = '2021-10-07', end='2021-10-09')
    

    这两种方法都会为您提供您在问题中提到的相同情节(类似于所提供问题中的底部)

    【讨论】:

      猜你喜欢
      • 2019-07-12
      • 1970-01-01
      • 1970-01-01
      • 2012-12-30
      • 2014-06-10
      • 1970-01-01
      • 2013-07-20
      • 1970-01-01
      • 2016-07-12
      相关资源
      最近更新 更多