如何使用matplotlib绘制甘特图?
在项目规划中,甘特图被广泛用于展示项目进度。它是一种条形图,垂直轴上列出了任务,水平轴上列出了时间间隔。图表中水平条形的宽度表示每个活动的持续时间。
要在matplotlib中绘制甘特图,可以使用 broken_barh() 方法。
步骤
-
设置图形大小并调整子图间和周围的填充。
-
创建一个图形和一组子图。
-
绘制一组水平矩形。
-
设置轴的 y 和 x 限制。
-
要显示图像,请使用 show() 方法。
示例
import matplotlib.pyplot as plt
# 设置图形大小
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
# 创建一个图形和一组子图
fig, ax = plt.subplots()
# 绘制一组水平矩形
ax.broken_barh([(110, 30), (150, 10)], (10, 9), facecolors='tab:blue')
ax.broken_barh([(10, 50), (100, 20), (130, 10)], (20, 9), facecolors='tab:orange')
# 设置轴的ylim和xlim
ax.set_ylim(5, 35)
ax.set_xlim(0, 200)
# 显示图像
plt.show()
输出
它将产生以下输出 –