python - 在 matplotlib 中格式化日期时间 xlabels(pandas df.plot() 方法)

标签 python matplotlib pandas

我不知道如何更改这些 x 标签的格式。理想情况下,我想对它们调用 strftime('%Y-%m-%d')。我试过 set_major_formatter 之类的东西,但没有成功。

import pandas as pd
import numpy as np
date_range = pd.date_range('2014-01-01', '2015-01-01', freq='MS')
df = pd.DataFrame({'foo': np.random.randint(0, 10, len(date_range))}, index=date_range)
ax = df.plot(kind='bar')

ugly x label formats

最佳答案

只需访问刻度标签并更改它们:

xtl=[item.get_text()[:10] for item in ax.get_xticklabels()]
_=ax.set_xticklabels(xtl)

enter image description here

关于python - 在 matplotlib 中格式化日期时间 xlabels(pandas df.plot() 方法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23088241/

相关文章:

python - 当我点击矩形时连续移动它(pygame)

python - 如何将 jupyter notebook 目录中的模块导入到较低目录的 notebook 中?

python - 在CKAN中上传文件但收到 'Could not connect to DataPusher'错误

python - 系统错误 : initialization of QtCore failed without raising an exception

Python:绘制时间增量和累积值

python - 装修契约(Contract)

python - 使用 pyplot 在 Python 中绘制带有嵌入式 if 语句的 lambda

python - 如何从 Linux 上的 python 脚本使用 matplotlib 1.5.1 进行交互式绘图?

python - 连接两个数据框的模糊匹配

python - 解析 Evtx 文件特定内容的最有效方法