
甘特图是一种条形图,把项目的活动显示为时间轴上的条形:条形的长度是工期,箭头是依赖关系,菱形是里程碑。Henry L. Gantt 在 1910 年至 1915 年间推广了这种图表。本文示例用 7 项活动和 2 个里程碑,规划一次为期 10 周的展会参展。
甘特图是什么?
甘特图是一种用于项目进度计划的条形图。纵轴列出活动,横轴是以天、周或月为单位的时间。每项活动显示为一根从开始延伸到结束的条形。
一张完整的甘特图包含六个要素:
| 要素 | 表示方式 | 含义 |
|---|---|---|
| 活动 | 条形 | 有开始、结束和工期的工作 |
| 群组 | 位于多项活动上方的汇总条形 | 阶段或工作包;工期由其中的活动计算得出 |
| 里程碑 | 菱形 | 没有工期的时间点,例如一次审批 |
| 依赖关系 | 两根条形之间的箭头 | 顺序:前置活动结束后,后续活动才开始 |
| 关键路径 | 突出显示的一串条形 | 没有浮动时间的活动;任何延误都会推迟项目结束 |
| 进度 | 条形中已填充的部分、状态日期线 | 完成了多少,项目今天进行到哪里 |
同一种图表也叫横道图、条形图或进度横道图。术语表中的 甘特图 词条给出了简短定义。
由来: 名称来自美国工程师 Henry L. Gantt,他在 1910 年至 1915 年间用条形图管理生产订单,并使其广为人知。其前身是 Joseph Priestley 于 1765 年发表的「Chart of Biography」,以及波兰工程师 Karol Adamiecki 于 1896 年提出的协调图(Harmonogram)(来源:Wikipedia, Gantt chart)。
如何阅读甘特图?
阅读甘特图时从左上看到右下:左侧是活动的结构,右侧每根条形显示该活动何时进行。条形开始的位置越靠右,活动开始得越晚;条形越长,所需时间越长。

用五个问题就能读懂任何甘特图:
- 项目什么时候结束? 最后一根条形或最后一个菱形的末端。
- 有哪些阶段? 群组的汇总条形;软件根据其下的活动计算长度。
- 什么依赖什么? 看箭头。从一根条形末端指向下一根条形开头的箭头表示:先完成,再继续。
- 哪些不能延误? 关键路径上的条形。Merlin Project 用红色显示它们。
- 项目进行到哪里? 条形中已填充的部分就是已完成的部分。如果一根条形位于状态日期线左侧却没有填充,说明该活动已经落后。
示例:一个项目的甘特图是什么样的?
一个项目的甘特图来自一张带工期和前置活动的活动清单。我们的示例:一家软件公司 8 周后在专业展会上参展,展会后用 2 周跟进潜在客户。七项活动,两个里程碑,工期均以周计。
| # | 活动 | 工期 | 前置活动 | 周 | 浮动时间 |
|---|---|---|---|---|---|
| A | 方案与预算 | 2 周 | 无 | 第 1 至 2 周 | 0 |
| M1 | 方案获批 | 里程碑 | A | 第 2 周末 | 0 |
| B | 预订展位面积 | 1 周 | M1 | 第 3 周 | 0 |
| C | 设计并搭建展台 | 4 周 | B | 第 4 至 7 周 | 0 |
| D | 准备展品和演示 | 4 周 | M1 | 第 3 至 6 周 | 1 周 |
| E | 宣传册和邀请函 | 2 周 | M1 | 第 3 至 4 周 | 3 周 |
| F | 运输和展台布置 | 1 周 | C、D、E | 第 8 周 | 0 |
| M2 | 展会开幕 | 里程碑 | F | 第 8 周末 | 0 |
| G | 跟进潜在客户 | 2 周 | M2 | 第 9 至 10 周 | 0 |
甘特图:10 周的展会参展计划
7 项活动、2 个里程碑,所有依赖关系均为结束到开始
如何解读结果:
- 项目工期: 关键路径 A、B、C、F、G 合计 2 + 1 + 4 + 1 + 2 = 10 周。
- 瓶颈: 展台 C 需要 4 周,是关键路径上最长的活动。如果展台搭建商晚交付一周,开幕就推迟到第 9 周,公司会错过展会日期。
- 浮动时间: 展品 D 在第 6 周结束,而布置 F 第 8 周才开始。所以 D 可以多用 1 周。宣传册 E 有 3 周浮动时间。
- 里程碑: M1 把计划和执行分开。B、D、E 在方案获批后才同时开始。M2 是整个计划对齐的固定日期。
同样的逻辑也适用于建筑工程、软件项目和办公室搬迁:改变关键路径上的工期,结束日期就会移动;在浮动时间范围内改变工期,结束日期保持不变。
如何制作甘特图?
制作甘特图分七步:列出活动、估算工期、设置依赖关系、标出里程碑、为活动分组、检查关键路径,并持续记录进度。
- 列出活动: 从 工作分解结构 (WBS) 中导出活动。活动是有明确结果的工作,例如“预订展位面积”。
- 估算工期: 询问实际做这项工作的人。输入工期,而不是开始和结束日期。
- 设置依赖关系: 确定每项活动要等待什么。最常见的类型是结束到开始:A 结束后 B 开始。如何规划重叠和等待时间,请参阅关于 提前量和滞后量 的文章。
- 标出里程碑: 在审批、阶段结束和固定日期处设置里程碑。示例中有两个。何时设置里程碑才有意义,请参阅文章 项目管理中的里程碑。
- 分组: 把相关活动归入阶段。群组以汇总条形显示阶段的开始、结束和工期。
- 检查关键路径: 没有浮动时间的活动决定项目结束日期。如果结束日期达不到目标,就缩短这条路径上的活动,或让它们重叠;参见 赶工和快速跟进。
- 记录进度: 甘特图的价值取决于最近一次更新。每周录入已完成的工作和实际日期,并与基准计划比较。
提示: 只在日期确实固定的地方设定固定日期,通常是里程碑。其他所有日期都由工期和依赖关系得出。某项活动延误时,软件会重新计算计划的其余部分。
不是给每项活动设定开始和结束日期,而是只给项目中选定的活动(通常是里程碑)设定日期。如果这些活动必须落在某个特定日期,甚至可以把它们固定下来。
Kathrin Lamm,Merlin Project 认证培训师
如何在 Merlin Project 中创建甘特图?
在 Merlin Project 中,在工作分解视图里创建带工期的活动并把它们链接起来,就得到甘特图。表格右侧的甘特图会自动绘制条形、箭头和菱形,并在每次修改后重新计算日期。
- 创建项目: 选取 文件 > 新 …,选择 空文档,然后点按 创建。Merlin Project 打开 工作分解 视图。
- 输入活动: 在空行中输入第一项活动,之后每项活动用 Cmd+N 添加。
- 输入工期: 按 F1 打开检测器,在 计划 标签页的 持续期间 中输入工期,例如四周输入“4w”。
- 分组: 用 缩进(Ctrl+Cmd+→)把活动放到某个阶段下面。群组会自行计算工期。
- 插入里程碑: 插入 > 里程碑(Alt+Cmd+M)。Merlin Project 以菱形绘制里程碑。
- 链接: 选择前置活动和后续活动,选取 结构 > 链接 > 结束到开始(Ctrl+Cmd+L)。也可以在甘特图中按住 Alt 键,从一根条形拖到下一根。
- 显示关键路径: 视图 > 显示关键路线 会把没有浮动时间的活动链显示为红色。列 预计的可宽延总时间 显示每项活动的浮动时间。
日常管控时,切换项目视图:进度 按每项活动与计划的符合程度为条形着色,里程碑 只显示里程碑,计划 / 实际比较(时间) 对比计划日期和预计日期。所有依赖类型的详细说明见课程 添加上下文与逻辑。
模板:带甘特图的阶段视图
“带甘特图的阶段视图”模板把窗口一分为二:上方以卡片显示各阶段的开始、结束和完成程度,下方是带甘特图的工作分解。样式规则会给同类活动相同的颜色。下载文件后,把其中的活动替换成您自己的活动即可。
在 Merlin Project 的工作分解 中,同样的活动也可以显示为 PERT 图 或 看板。数据只需维护一次。
什么时候适合用甘特图,什么时候不适合?
甘特图适合结束日期固定、工作步骤明确、依赖关系多的项目,例如建筑工程、活动策划、产品发布或办公室搬迁。对于范围每周都在变化的工作,看板更合适。
| 图表 | 主要显示 | 适用于 |
|---|---|---|
| 甘特图 | 时间轴上的日期和工期 | 进度计划、固定日期、进度跟踪 |
| PERT 图 | 依赖关系的逻辑、不确定的工期 | 在项目开始前找到可靠的日期 |
| 看板 | 按状态划分的工作流 | 优先级不断变化的持续性工作 |
优点:
- 日期、工期和顺序集中在一页上;委托方无需讲解就能看懂计划。
- 关键路径指出哪些活动需要密切监控。
- 有了基准计划和状态日期线,延误在影响结束日期之前就能被发现。
局限:
- 超过几百行后,图表就会失去概览性。群组和折叠的阶段能保持可读。
- 甘特图不显示不确定性。4 周的工期无论基于经验还是猜测,看起来都一样确定。蒙特卡洛模拟 可以弥补这一点。
- 如果不维护,计划几周内就会过时。
许多团队把两者结合起来:阶段和里程碑放在甘特图中,阶段内部的工作放在看板上。关于 混合式项目管理 的文章介绍了这种做法。瀑布模型 指南讲解了经典的阶段顺序。
甘特图软件应具备哪些功能?
只要计划中有依赖关系,甘特图软件就物有所值:某项活动延误时,它会顺延所有后续活动。Excel 没有预定义的甘特图类型;Microsoft 介绍的替代办法是自定义堆积条形图(来源:Microsoft 支持,在 Excel 中使用甘特图)。这种图表不计算依赖关系:移动一项活动后,所有后续活动都要手动移动。
请检查以下七点:
- 自动计算日期: 工期改变时,软件会顺延后续活动吗?
- 依赖类型: 除了结束到开始,是否还有开始到开始、结束到结束以及提前量或滞后量?
- 关键路径和浮动时间: 无需手动操作就能显示两者吗?
- 计划与实际: 能否保存基准计划,并与实际状态比较?
- 资源: 同一个人在同一周被重复安排时,软件能发现吗?
- 更多视图: 能否用同一份数据显示网络图、看板或思维导图?
- 数据交换: 能否打开和保存 Microsoft Project 与 Excel 文件?Merlin Project 支持的格式列在 协作与导入/导出 页面。
实用技巧
- 用分组代替滚动: 例如一份活动计划可以分为场地与物流、来宾、市场营销、日程和后续工作。折叠后,图表只显示五根汇总条形。
- 少设里程碑: 如果每一步都是里程碑,就没有一个能突出。
- 让团队来估算: 做这项工作的人比项目经理更清楚工期。
- 每周更新: 过时的计划比没有计划危害更大,因为所有人都信任它。
- 向管理层汇报时要精简: 只向干系人展示阶段和里程碑,细节留在工作计划中。
制定项目计划时,我至少会在最高层级的阶段之间设置里程碑。这样,每次董事会会议我都能拿出状态,而不会迷失在细节中。
Frank Blome,ProjectWizards 总经理
如果不想从零开始制定计划,适用于每个项目的 100 项任务清单 汇总了典型的活动。
结论
甘特图把一张带工期和依赖关系的活动清单变成进度计划。它给出三个结果:项目结束日期、关键路径,以及其他所有活动的浮动时间。在示例中,这三个结果分别是 10 周、A、B、C、F、G 这条链,以及展品和宣传册 1 至 3 周的浮动时间。用工期而不是日期来做计划,软件就会替您重新计算每一次变更。
如果您对这篇博客文章有任何疑问或希望参与讨论,欢迎您在我们的论坛中发帖。
常见问题
甘特图是什么?
甘特图是一种用于项目进度计划的条形图。它把活动显示为时间轴上的条形,把依赖关系显示为箭头,把里程碑显示为菱形。条形的长度对应活动的工期。
如何制作甘特图?
分七步:列出活动、估算工期、设置依赖关系、标出里程碑、把活动分组为阶段、检查关键路径,并持续记录进度。项目管理软件会根据工期和依赖关系自动绘制条形。
甘特图和横道图有什么区别?
没有区别。甘特图、横道图、条形图和 Gantt chart 指的是同一种图表:把活动显示为时间轴上的条形。
甘特图中如何表示里程碑?
用菱形表示。里程碑没有工期,标记一个时间点,例如一次审批或一个固定日期。在 Merlin Project 中,通过 插入 > 里程碑(Alt+Cmd+M)添加。
甘特图中的关键路径是什么?
没有浮动时间的活动链。其中任何一项延误,项目结束日期都会推迟。在本指南的示例中,7 项活动里有 5 项位于关键路径上,共 10 周。在 Merlin Project 中,视图 > 显示关键路线 会把这些条形显示为红色。
可以用 Excel 制作甘特图吗?
只能作为权宜之计。Excel 没有预定义的甘特图类型;Microsoft 介绍的是自定义堆积条形图。这样就没有依赖关系、关键路径和日期自动重算。对于有依赖关系的计划,用 Merlin Project 这样的项目管理软件更快。