Python培训:绘制甘特图

今天的Python培训课程,我们讲解一下甘特图的绘制方法。甘特图亦称为横道图、条状图,它通过活动列表和时间刻度表示特定项目的顺序与持续时间。甘特图一般以时间为横轴、项目为纵轴,可以直观地展示每个项目的进展情况,以便于管理者了解项目的剩余任务及评估工作进度。例如,某公司于12月份跟踪了某项目的进度,如图8-10所示。

  图8-10某项目进度的甘特图

  观察图8-10可知,甘特图类似于条形图,它们的图形都是横向的矩形条,但甘特图中每个矩形条的起始位置是不同的。使用pyplot模块的barh()函数可以绘制一个甘特图,只需要给left参数传入值,指定每个矩形条x坐标值即可。

       已知某公司准备开辟一个新项目,为确保项目的可行性,将该项目划分为“项目确定”“问卷设计”“试访”“问卷确定”“实地执行”“数据录入”“数据分析”“提交报告”共8个任务,并指定了各任务的周期。下面使用barh()绘制一个甘特图,示例代码如下。

import numpy as np
import matplotlib.pyplot as plt
ticks = np.array(['提交报告', '数据分析', '数据录入', '实地执行',
                  '问卷确定', '试访', '问卷设计', '项目确定'])
y_data = np.arange(1,9)
x_data = np.array([0.5, 1.5, 1, 3, 0.5, 1, 1,2])
fig, ax = plt.subplots(1, 1)
ax.barh(y_data, x_data, tick_label=ticks,
        left=[7.5, 6, 5.5, 3, 3, 2, 1.5, 0], color='#CD5C5C')
[ax.spines[i].set_visible(False) for i in ['top', 'right']]
ax.set_title("任务甘特图")
ax.set_xlabel("日期")
ax.grid(alpha=0.5, axis='x')
plt.show()

       运行程序,效果如图8-11所示。

  图8-11中,每个深灰色的条形代表任务的周期,条形越长代表周期越长。由图8-11可知,“实地执行”任务的周期最长,共计3天。

  图8-11某新项目8个任务及各任务周期的甘特图

  • 5
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值