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

求助:基于Deneb的Power BI三级任务层级甘特图定制及进度列移除

Deneb甘特图适配MS Project三级任务层级并移除进度列

需求说明

我使用Deneb插件加载David的甘特图模板,数据直接导出自MS Project,包含三级任务层级(对应数据中的Lvl字段),希望在Power BI可视化组件中展示该层级结构;同时需要暂时移除甘特图中的进度列(对应预期效果里红框标注的部分)。

数据片段

LvlUnique IDTask NameDurationStartFinishPredecessors
01Program-wide515 daysMon 11/03/24Fri 27/02/26
6253Project commencement workshop2 daysTue 26/03/24Wed 27/03/24
62Project set-up30 daysMon 11/03/24Fri 19/04/24
6242Project Plans, including PMP, EMP, etc.30 daysMon 11/03/24Fri 19/04/24
63Program management515 daysMon 11/03/24Fri 27/02/26
09Project 1477 daysFri 5/04/24Tue 3/02/26
328Preliminary Investigation156 daysFri 5/04/24Mon 11/11/24
625Start-up meeting0 daysFri 5/04/24Fri 5/04/243SS+20 days
6160Receipt of information1 dayFri 28/06/24Fri 28/06/24
616Preliminary Site Inspection20 daysMon 1/07/24Fri 26/07/249,8,291
630Sampling Analysis Plan20 daysMon 1/07/24Fri 26/07/249,8,291
623Final deliverables0 daysMon 14/10/24Mon 14/10/2419FS+1 day
663Information Session preparation10 daysTue 15/10/24Mon 28/10/2420
662Information Session0 daysMon 28/10/24Mon 28/10/2421
667Engagement Summary Report10 daysTue 29/10/24Mon 11/11/2422
329Detailed Investigation181 daysTue 24/09/24Tue 3/06/25
633Preparation25 daysTue 24/09/24Mon 28/10/2420FS-15 days
634Field investigations20 daysTue 29/10/24Mon 25/11/2425,22
637Lab analysis5 daysTue 26/11/24Mon 2/12/2426
353Risk assessment181 daysMon 3/03/25Tue 11/11/25
661Final deliverables0 daysTue 14/10/25Tue 14/10/2557
664Information Session preparation10 daysWed 15/10/25Tue 28/10/2558
665Information Session0 daysTue 28/10/25Tue 28/10/2559
670Engagement Summary Report10 daysWed 29/10/25Tue 11/11/2560
0215Project 2491 daysTue 16/04/24Tue 3/03/26
3267Preliminary Investigation170 daysTue 16/04/24Mon 9/12/24
6307Start-up meeting0 daysTue 16/04/24Tue 16/04/243SS+20 days
6161Receipt of information1 dayFri 28/06/24Fri 28/06/24
6231Preliminary Site Inspection40 daysMon 1/07/24Fri 23/08/2476,77
6244Sampling Analysis Plan40 daysMon 1/07/24Fri 23/08/2476,77
6249Final deliverables7 daysMon 9/09/24Tue 17/09/2480
6185Information Session preparation3 daysWed 18/09/24Fri 20/09/2481,82
6250Information Session20 daysMon 23/09/24Fri 18/10/2483
6227Engagement Summary Report10 daysMon 21/10/24Fri 1/11/2484
6236Detailed Investigation10 daysMon 21/10/24Fri 1/11/2484
6281Preparation5 daysMon 4/11/24Fri 8/11/2485,86
6218Field investigations0 daysMon 11/11/24Mon 11/11/2487FS+1 day
6269Lab analysis10 daysTue 12/11/24Mon 25/11/2488
6293Risk assessment0 daysMon 25/11/24Mon 25/11/2489
3333Final deliverables181 daysTue 22/10/24Tue 1/07/25
6219Information Session preparation25 daysTue 22/10/24Mon 25/11/2488FS-15 days
6270Information Session20 daysTue 26/11/24Mon 23/12/2490,93
6226Engagement Summary Report5 daysTue 24/12/24Mon 30/12/2494

预期效果

预期甘特图效果

具体修改方案

1. 移除进度列

打开Deneb的Vega-Lite代码,找到所有与进度相关的图层(通常是一个mark: rect的对象,绑定了progress字段),直接删除整个图层块。同时检查图表的width配置,适当调整以避免空白区域。

2. 实现三级任务层级缩进

找到绘制任务名称的文本标记部分,修改其横向偏移量,根据Lvl字段值设置不同缩进:

{
  "mark": {
    "type": "text",
    "align": "left",
    "baseline": "middle",
    // 根据Lvl值设置缩进,0级不缩进,3级缩进20px,6级缩进40px
    "dx": {"expr": "datum.Lvl === 0 ? 0 : datum.Lvl === 3 ? 20 : 40"}
  },
  "encoding": {
    "y": {"field": "Task Name", "type": "ordinal", "axis": null},
    "text": {"field": "Task Name", "type": "nominal"}
  }
}

如果你的Lvl字段值对应层级不同,可自行调整偏移像素数值。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 10:55:55