无等待置换流水车间甘特图python
时间: 2023-06-28 14:05:31 浏览: 102
基于TSP方法求解等待时间受限的置换流水车间调度
你可以使用Python中的Matplotlib库来绘制甘特图。以下是一个简单的示例:
```python
import matplotlib.pyplot as plt
# 定义任务名称、开始时间和结束时间
tasks = [('Task 1', '2021-01-01', '2021-01-05'),
('Task 2', '2021-01-06', '2021-01-12'),
('Task 3', '2021-01-13', '2021-01-20')]
# 转换日期格式
dates = []
for task in tasks:
start_date = datetime.datetime.strptime(task[1], '%Y-%m-%d')
end_date = datetime.datetime.strptime(task[2], '%Y-%m-%d')
dates.append((task[0], start_date, end_date))
# 绘制甘特图
fig, ax = plt.subplots()
for i, task in enumerate(dates):
ax.broken_barh([(task[1], (task[2]-task[1]).days)], ((i+1)*10, 9), facecolors=('tab:blue'))
# 设置图表标题和标签
ax.set_ylim(5, len(tasks)*10+5)
ax.set_xlim(dates[0][1], dates[-1][2])
ax.set_xlabel('Date')
ax.set_yticks([i*10+10 for i in range(len(tasks))])
ax.set_yticklabels([task[0] for task in dates])
ax.grid(True)
# 显示图表
plt.show()
```
这里我们假设有三个任务,每个任务都有一个名称、开始日期和结束日期。我们首先将日期转换为Python的datetime对象,然后使用Matplotlib的broken_barh函数来绘制甘特图。最后,我们设置图表标题和标签,并使用grid函数添加网格线。
阅读全文