【问题标题】:Drop the date from a matplotlib time series plot从 matplotlib 时间序列图中删除日期
【发布时间】:2015-08-11 19:59:10
【问题描述】:

我在 Pandas 中有一个简单的时间序列图,可以通过以下代码进行模拟:

import pandas as pd
import numpy as np
from datetime import datetime, timedelta, date
import time
import matplotlib.pyplot as plt

df2 = pd.DataFrame({'A' : np.random.rand(1440).cumsum()}, index = pd.date_range('1/1/2015', periods=1440, freq='1min'))

df2.A.plot()

这会生成以下图表:

我的问题是显示的日期与图表本身无关,我希望将其删除并仅在 x 轴上保留时间序列。

我该怎么做?

【问题讨论】:

    标签: python pandas matplotlib


    【解决方案1】:

    您可以使用matplotlib.dates 及其HourLocator 来设置日期/时间格式:

    import pandas as pd
    import numpy as np
    from datetime import datetime, timedelta, date
    import time
    import matplotlib.pyplot as plt
    import matplotlib.dates as dates
    
    df2 = pd.DataFrame({'A' : np.random.rand(1440).cumsum()}, index = pd.date_range('1/1/2015', periods=1440, freq='1min'))
    
    df2.A.plot()
    plt.gca().xaxis.set_major_locator(dates.HourLocator())
    plt.gca().xaxis.set_major_formatter(dates.DateFormatter('%H:%M'))
    
    plt.show()
    

    【讨论】:

    • 只是 HourLocator 为我工作,格式化程序出错了。
    猜你喜欢
    • 2018-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-26
    相关资源
    最近更新 更多