首页 > 解决方案 > 将熊猫图中的 xtick 标签更改为不同的日期格式

问题描述

我从这个数据框中绘制数据。

Date    2011    2012    2013    2014    2015    2016    2017    2018    2019    2020
Date                                        
01-01   12.896  13.353  12.959  13.011  13.073  12.721  12.643  12.484  12.876  13.102
01-02   12.915  13.421  12.961  13.103  13.125  12.806  12.644  12.600  12.956  13.075
01-03   12.926  13.379  13.012  13.116  13.112  12.790  12.713  12.634  12.959  13.176
01-04   13.051  13.414  13.045  13.219  13.051  12.829  12.954  12.724  13.047  13.187
01-05   13.176  13.417  13.065  13.148  13.115  12.874  12.956  12.834  13.098  13.123

该图会在一年中的每一天为每一年生成一个线图。

ice_data.plot(figsize=(20,12), title='Arctic Sea Ice Extent', lw=4, fontsize=16, ax=ax, grid=True)

但是,此图从数据帧(01-01(1 月 1 日))生成格式为 xtick 标签。我想将 xtick 标签更改为 01 Jan,但似乎无法弄清楚如何操作数据框strftime()来完成此操作。这是一张供参考的图片。

在此处输入图像描述

标签: pythonpandasdataframedatetime

解决方案


to_datetime通过指定年份将值转换为日期时间以进行正确解析2-29,最后通过以下方式转换为自定义格式DatetimeIndex.strftime

idx = pd.to_datetime('2000' + ice_data.index, format='%Y%m-%d').strftime('%d %b')
ice_data = ice_data.set_index(idx)

推荐阅读