python如何绘制甘特图,Python绘制甘特图的方法

原创
ithorizon 7个月前 (09-26) 阅读数 49 #Python

Python绘制甘特图的技巧

在项目管理中,甘特图是一种常用的工具,用于可视化项目的进度和关键任务,在Python中,我们可以使用多种库来绘制甘特图,例如matplotlibpandas等。

我们需要安装必要的库,可以使用pip来安装matplotlibpandas库,在命令行中输入以下命令进行安装:

pip install matplotlib pandas

我们可以使用pandas库来创建任务列表和进度数据,我们可以创建一个DataFrame,包含任务名称、开始日期、结束日期和完成进度等信息。

import pandas as pd
创建任务列表和进度数据
df = pd.DataFrame({
    '任务名称': ['任务1', '任务2', '任务3'],
    '开始日期': ['2023-05-01', '2023-05-02', '2023-05-03'],
    '结束日期': ['2023-05-05', '2023-05-04', '2023-05-05'],
    '完成进度': [0.5, 0.7, 0.8]
})

我们可以使用matplotlib库来绘制甘特图,我们可以设置图表的标题、图例和坐标轴标签等。

import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from pandas import to_datetime
将日期列转换为datetime类型
df['开始日期'] = pd.to_datetime(df['开始日期'])
df['结束日期'] = pd.to_datetime(df['结束日期'])
设置图表的标题和坐标轴标签
plt.figure(figsize=(10, 6))
plt.title('项目甘特图')
plt.xlabel('日期')
plt.ylabel('完成进度')
plt.gcf().autofmt_xdate()  # 自动旋转日期标记
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d'))  # 设置日期格式
绘制甘特图
for index, row in df.iterrows():
    plt.plot([row['开始日期'], row['结束日期']], [index, index], marker='o')
    plt.text(row['开始日期'], index, row['任务名称'], ha='center')
    plt.fill_between([row['开始日期'], row['结束日期']], index, index+0.2, color='lightblue')


热门