【问题标题】:Gantt charts with Flask [closed]带有 Flask 的甘特图 [关闭]
【发布时间】:2026-01-31 04:50:01
【问题描述】:

我需要一个示例代码来使用烧瓶表示甘特图中的一些数据。

【问题讨论】:

    标签: python flask plotly gantt-chart


    【解决方案1】:

    虽然你的问题太宽泛而且你似乎没有尝试过任何东西,但我会给你一个例子。假设我们有以下代码:

    from flask import Flask, request, render_template
    
    app = Flask(__name__)
    app.config['DEBUG'] = True
    
    
    def init_gantt():
        import matplotlib.pyplot as plt
    
        fig, gnt = plt.subplots()
        gnt.set_ylim(0, 50)
    
        gnt.set_xlim(0, 160)
        gnt.set_xlabel('seconds since start')
        gnt.set_ylabel('Processor')
    
        gnt.set_yticks([15, 25, 35])
        gnt.set_yticklabels(['1', '2', '3'])
    
        gnt.grid(True)
    
        gnt.broken_barh([(40, 50)], (30, 9), facecolors=('tab:orange'))
        gnt.broken_barh([(110, 10), (150, 10)], (10, 9),
                        facecolors='tab:blue')
    
        gnt.broken_barh([(10, 50), (100, 20), (130, 10)], (20, 9),
                        facecolors=('tab:red'))
    
        plt.savefig("your_path/gantt1.png")
    
    
    @app.route('/')
    def index():
        return render_template('gantt.html')
    
    
    if __name__ == "__main__":
        app.run()
    

    init_gantt 函数创建我们的图表并将其保存到本地的png 文件中。然后您只需在模板中显示该图像:

    gantt.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Gantt</title>
    </head>
    <body>
    <img src="your_path/gantt1.png"/>
    </body>
    </html>
    

    【讨论】: