【问题标题】:Render graph from Python / Flask to HTML using Jinja2使用 Jinja2 将图形从 Python / Flask 渲染到 HTML
【发布时间】:2022-01-02 16:06:51
【问题描述】:

我已经编写了一堆代码,但由于某种原因它没有在 HTML 中呈现图表。然而,程序运行并在静态文件夹中创建图像。有人能告诉我如何将 Jinja2 中的这个“图像”以 HTML 格式传递,以便在 HTML 中查看它吗? 烧瓶代码:

@app.route('/', methods=['GET', 'POST'])
def index():
image = False
from flask import Flask, render_template, request
if request.method == 'POST':
    a = int(request.form['a'])
    x = np.linspace(-20, 20, 20)
    y = a * x 
    plt.plot(x,y)
    plt.savefig('C:/Users/name/PycharmProjects/qtcalc1/static/image.png')
    image = url_for('static', filename = image)
    print(image)
    plt.show()

return render_template('graphtry.html', image = image)

Note view 函数代码在我这边缩进得很好。我需要有关如何使用 Jinja2 在我的 HTML 文件 graphtry.html 中呈现此图像的解决方案。我目前的HTML代码如下:

<img src ="{{image}}" >

【问题讨论】:

    标签: python html flask jinja2


    【解决方案1】:

    当你写作时

    image = url_for('static', filename = image)
    

    参数中image 变量的值是False(从第3 行开始)。您必须传递实际的文件名,在本例中为:image.png

    image = url_for('static', filename='image.png')
    

    另外,去掉src属性后面的多余空格:

    <img src="{{image}}" />
    

    【讨论】:

    • 谢谢 Dauros。
    猜你喜欢
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 2019-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-08
    • 1970-01-01
    相关资源
    最近更新 更多