Python - Flask - MatPlotLib - PullRequest
       5

Python - Flask - MatPlotLib

0 голосов
/ 24 апреля 2020

Я пытаюсь встроить график из функции, которую я передаю в мое приложение flask.

Ниже все отлично, но запускает график вне браузера.

I Я много читал о IO и всем, но я запутался в том, как / где это обрабатывать.

Функция runBB () в app.py возвращает plt.show (). После прохождения символа, который извлекается из формы. Должен ли я передавать рис вместо выполнения операций ввода-вывода в app.py или в файле, содержащем функцию?

Я не хочу никуда сохранять файл, так как хочу, чтобы это было Dynami c с точки зрения множественного отказа от перезаписи сохраненного файла, что, как мне кажется, позволяет IO.

app.py

#Dashboard page
@app.route("/dashboard", methods = ["POST", "GET"])
def dashboard():
    if person["is_logged_in"] == True:
        return render_template("dashboard.html", email = person["email"], name = person["name"])
    else:
        return redirect(url_for('login'))

@app.route("/form", methods = ["POST", "GET"])
def form():
    if request.method == "POST":
        symbol = request.form["symbol"]
        bytes_obj = runBB(symbol)

        return render_template("dashboard.html", symbol=bytes_obj)

панель инструментов. html

{% extends "layout.html" %}
{% block content %}
<head>
    <title>Welcome</title>
    <link rel="stylesheet" type="text/css" href="{{url_for('static', filename = 'dashboard.css')}}">
    <link rel="stylesheet" type="text/css" href="../static/dashboard.css">
</head>
<body>
<div class="main">
    <h1 class="name">Hi, {{name}}</h1>

    <form action="{{ url_for('form') }}" method ="POST">
    <p><input placeholder="Enter your symbol" type="text" name="symbol"></p>
    <p><input type="submit" value="Run Report" class="btn-default"></p>
    </form>

    <P>{{bytes_obj}}</P>

    <!-- <hr style="width: 30%"> -->
    <h3 class="email">{{email}}</h3>
</div>
</body>
{% endblock %}

Может кто-нибудь направить меня в правильном направлении?

Я пытался понять другие подобные вопросы, связанные с переполнением стека, и, похоже, не могу asp это или собрать вместе.

1 Ответ

0 голосов
/ 24 апреля 2020

Пожалуйста, обратитесь к этой ссылке, чтобы узнать, как это сделать, используя:

import io
import base64

https://gitlab.com/snippets/1924163

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...