เพื่อแสดงพล็อตใน Flask เราสามารถทำตามขั้นตอนต่อไปนี้:
- สร้างแอปพลิเคชันขนาดเล็ก
- หากต้องการเรียกใช้แอปพลิเคชัน Flask ให้ไปที่ไดเร็กทอรีปัจจุบัน
- $ ส่งออก FLASK_APP=file.py
- เรียกใช้ขวด $$
- เปิดเบราว์เซอร์ กด url:https://127.0.0.1:5000/print-plot/
- ในการพล็อตตัวเลข เราสามารถสร้างจุดข้อมูลสำหรับ x และ y โดยใช้การสุ่ม
- พล็อตจุดข้อมูล x และ y บนแกนที่สร้างขึ้น
- เขียนฟิกเกอร์ให้อยู่ในรูปแบบ png
- ดึงเนื้อหาทั้งหมดของ BytesIO วัตถุ
ตัวอย่าง
import io from flask import Response from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas from matplotlib.figure import Figure from flask import Flask import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True app = Flask(__name__) @app.route('/print-plot') def plot_png(): fig = Figure() axis = fig.add_subplot(1, 1, 1) xs = np.random.rand(100) ys = np.random.rand(100) axis.plot(xs, ys) output = io.BytesIO() FigureCanvas(fig).print_png(output) return Response(output.getvalue(), mimetype='image/png')
ผลลัพธ์