You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

seaborn绘图如何设置X轴仅显示小时和分钟?

问题说明

现有测试数据集定义如下:

import pandas as pd
df = pd.DataFrame({"Date":["2015-02-02 14:19:00","2015-02-02 14:22:00","2015-02-17 14:57:00","2015-02-17 14:58:59"],"Occurrence":[1,0,1,1]})
df["Date"] = pd.to_datetime(df["Date"])

使用seaborn绘制折线图的初始代码:

import seaborn as sns
sns.set_theme(style="darkgrid")
sns.lineplot(x="Date", y="Occurrence",  data=df)

默认生成的图表X轴会展示包含年月日在内的完整日期信息,需求为X轴仅展示小时、分钟内容,隐藏年月日部分。
初始代码运行效果示意图

实现方式

借助matplotlib内置的日期格式化器修改X轴刻度显示规则即可,不需要修改原始时间字段,在原有绘图逻辑后追加以下代码:

import matplotlib.pyplot as plt
import matplotlib.dates as mdates

# 获取当前绘图轴实例
ax = plt.gca()
# 配置X轴刻度时间格式为「小时:分钟」
ax.xaxis.set_major_formatter(mdates.DateFormatter('%H:%M'))

plt.show()
  • 如果时间跨度较大出现刻度标签重叠,可额外配置刻度间隔,例如设置每5分钟显示一个刻度:ax.xaxis.set_major_locator(mdates.MinuteLocator(interval=5))
  • 格式化字符串%H:%M对应24小时制的小时+分钟,若需要12小时制可替换为%I:%M %p,会附带AM/PM标识。

内容的提问来源于stack exchange,提问作者JAdel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 21:36:25