分享好友 数智知识首页 数智知识分类 切换频道

可视化甘特图自动生成进度条

生成可视化甘特图和进度条是项目管理中常见的需求。下面我将介绍如何利用Python的matplotlib库来自动生成甘特图,并使用自定义函数来在甘特图上添加进度条。...
2025-04-25 13:51190

生成可视化甘特图和进度条是项目管理中常见的需求。下面我将介绍如何利用Python的matplotlib库来自动生成甘特图,并使用自定义函数来在甘特图上添加进度条。

首先,我们需要安装必要的库:

```bash

pip install matplotlib

pip install pandas

```

接下来,我们编写一个Python脚本来生成甘特图,并在其中添加进度条。

```python

import matplotlib.pyplot as plt

import pandas as pd

from datetime import datetime, timedelta

# 定义任务列表

tasks = [

{"name": "Task1", "duration": 10},

{"name": "Task2", "duration": 15},

{"name": "Task3", "duration": 20},

{"name": "Task4", "duration": 30}

]

# 定义开始和结束日期

start_date = datetime(2022, 1, 1)

end_date = datetime(2022, 1, 31)

# 创建数据框

df = pd.DataFrame(tasks, columns=["Name", "Duration"])

# 计算每个任务的持续时间

for i in range(len(tasks)):

    df.at[i, "Duration"] = (end_date
  • start_date).days / tasks[i]["duration"]

可视化甘特图自动生成进度条

# 设置甘特图样式

plt.style.use('ggplot')

plt.xlabel("Days")

plt.ylabel("Task")

plt.title("Gantt Chart of Tasks")

plt.grid()

# 绘制甘特图

plt.bar(df.index, df["Duration"], color='skyblue', alpha=0.7)

# 添加进度条

def add_progress_bar(bar, days, duration):

height = bar.get_height() + 0.5 * duration

plt.barh([0], height, color='darkgray', alpha=0.5)

for i, value in enumerate(days):

plt.text(value, height, f'{days[i]:.0f}%', ha='center', va='bottom')

plt.gca().set_aspect('equal', adjustable='box')

plt.show()

for i in range(len(df)):

add_progress_bar(df.iloc[i]["Bar"].get_height(), df.iloc[i]["Duration"], df.iloc[i]["Duration"])

# 显示结果

plt.show()

```

这个脚本首先定义了一个任务列表和一个开始和结束日期。然后,它使用pandas库创建一个数据框,将任务按名称和持续时间分组。接着,它计算每个任务的持续时间,并将其添加到数据框中。

接下来,我们设置甘特图的样式,并绘制甘特图。最后,我们为每个任务添加进度条,使其显示任务的完成百分比。

运行此脚本后,您将看到一个简单的甘特图,其中包含进度条。您可以根据需要调整样式和参数。

举报
收藏 0
推荐产品更多
蓝凌MK

智能、协同、安全、高效蓝凌MK数智化工作平台全面支撑组织数智化可持续发展Gartner预测,组装式企业在实施新功能方面能力超80%竞争对手。未来,企业亟需基于“封装业务能力”(Packaged Business Capability,简称PBC)理念,将传统OA及业务系统全面升级为组...

4.5 119

帆软FineBI

数据分析,一气呵成数据准备可连接多种数据源,一键接入数据库表或导入Excel数据编辑可视化编辑数据,过滤合并计算,完全不需要SQL数据可视化内置50+图表和联动钻取特效,可视化呈现数据故事分享协作可多人协同编辑仪表板,复用他人报表,一键分享发布比传统...

4.5 93

简道云

简道云:零代码构建企业级应用,赋能敏捷管理简道云是国内领先的企业级零代码应用搭建平台,通过灵活的表单设计、自动化流程与可视化分析,帮助企业快速构建贴合业务场景的管理系统,实现数据驱动的高效协同,助力数字化转型“轻装上阵”。一、核心优势零代码...

4.5 85

纷享销客CRM

大多数企业低估了数字化对于增长的贡献数字化工具是增长的高速公路,是增长引擎持续奔跑的基础平台传统山型增长曲线企业用更多资源换得增长,ROI会逐渐下降传统增长模式增长公式=资源投入*转化效率数字化时代新增长曲线数字化升级逐渐突破瓶颈,带来企业持续...

4.5 101

推荐知识更多