将日期转换为数字格式以进行绘图
当日期以不同格式存储时,根据日期绘制数据可能会很困难,例如“1991 年 1 月 2 日。”本文提供了一种将日期转换为可以轻松在 x 轴上绘制的数字格式的解决方案。
如问题中所述,使用 strftime('%Y%m%d') 转换日期仅靠这一点可能还不够。要解决此问题,请考虑使用 Python 的 datetime 模块将字符串转换为 datetime.date 的实例。
<code class="python">import datetime as dt dates = ['01/02/1991','01/03/1991','01/04/1991'] x = [dt.datetime.strptime(d,'%m/%d/%Y').date() for d in dates]</code>
将日期转换为 datetime.date 对象后,我们可以继续使用 matplotlib.pyplot 进行绘图,如提供的解决方案中所示。
<code class="python">import matplotlib.pyplot as plt import matplotlib.dates as mdates plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%m/%d/%Y')) plt.gca().xaxis.set_major_locator(mdates.DayLocator()) plt.plot(x,y) plt.gcf().autofmt_xdate()</code>
通过执行以下步骤,即使日期以非数字格式存储,您也可以成功地根据日期绘制数据。
以上是如何将日期转换为数字格式以进行绘图?的详细内容。更多信息请关注PHP中文网其他相关文章!