python如何将时间(如:2:00)作为甘特图的横坐标
时间: 2024-04-11 15:33:40 浏览: 89
在Python中,你可以使用`matplotlib`库来绘制甘特图,并将时间作为横坐标。下面是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
# 甘特图数据
tasks = ['Task 1', 'Task 2', 'Task 3']
start_times = ['2:00', '3:30', '5:15']
end_times = ['3:15', '4:45', '6:30']
# 将时间转换为datetime对象
start_times_dt = [mdates.datetime.datetime.strptime(t, '%H:%M') for t in start_times]
end_times_dt = [mdates.datetime.datetime.strptime(t, '%H:%M') for t in end_times]
# 创建甘特图
fig, ax = plt.subplots()
# 设置横坐标为时间格式
ax.xaxis.set_major_formatter(mdates.DateFormatter('%H:%M'))
# 绘制甘特图
for i in range(len(tasks)):
ax.barh(tasks[i], end_times_dt[i] - start_times_dt[i], left=start_times_dt[i])
# 设置标题和标签
plt.title('Gantt Chart')
plt.xlabel('Time')
# 自动调整日期显示方式
fig.autofmt_xdate()
# 显示甘特图
plt.show()
```
这段代码将会创建一个简单的甘特图,横坐标为时间,纵坐标为任务名称。你可以根据自己的需求修改任务和时间的数据。
阅读全文