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

如何自定义Plotly Express甘特图x轴日期标签仅显示月份

Plotly Express 甘特图X轴仅显示月份标签配置方法

通过plotly内置的轴属性配置即可实现需求,无需修改原始数据集,核心是控制日期轴的刻度间隔与显示格式,覆盖默认的自动日期标签规则。

  • 配置dtick="M1":强制X轴刻度间隔为1个自然月,避免跨年度时plotly自动聚合刻度、追加年份标签
  • 配置tickformat:指定日期文本的渲染格式,仅保留月份字段:
    • 传值%b时显示月份缩写(英文环境为Jan/Feb,中文环境为1月/2月)
    • 传值%B时显示月份全称(英文环境为January/February,中文环境为一月/二月)
  • 配置ticklabelmode="period":让刻度标签与自然月周期对齐,避免跨时间段的标签错位

完整可运行示例代码如下:

import plotly.express as px
import pandas as pd

# 跨年度测试数据集
df = pd.DataFrame([
    dict(Task="任务1", Start="2023-01-08", Finish="2023-03-20", Group="一组"),
    dict(Task="任务2", Start="2023-12-01", Finish="2024-02-15", Group="二组"),
    dict(Task="任务3", Start="2024-05-10", Finish="2024-07-05", Group="一组")
])

# 绘制基础甘特图
fig = px.timeline(df, x_start="Start", x_end="Finish", y="Task", color="Group")

# X轴标签自定义配置
fig.update_xaxes(
    dtick="M1",
    tickformat="%b",
    ticklabelmode="period"
)

fig.show()

若需要区分跨年的相同月份,不需要修改全局格式,单独通过tickvals和ticktext参数指定对应刻度的自定义文本即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 20:57:21