我正在尝试将Matplotlib图形图像显示为.html中的变量,但未成功。我是Django的新手,所以我们将不胜感激。
当我进入HTML页面时,得到以下图像:
from django.shortcuts import render
import sys
import platform
import datetime as dt
from datetime import timedelta, date
from django.shortcuts import render
from django.http import HttpResponse
from pylab import *
import io
inside views.py
def submit(request):
x = [1, 2, 3, 4, 5, 6]
y = [5, 2, 6, 8, 2, 7]
plot(x, y, linewidth=2)
xlabel('x-axis')
ylabel('yaxis')
title('sample graph')
grid(True)
buf = io.BytesIO()
plt.savefig(buf, format='png')
plt.close()
plt_bytes = buf.getvalue()
buf.close()
return render(request, 'jobs_app/index.html', {'path': plt_bytes})
内部index.html:
< img src="{{ path }}">
在终端控制台中收到的错误代码是 [22 / Jun / 2018 18:39:04]“ POST / Home / submit HTTP / 1.1” 200 95021 找不到:/ Home / b'/ x89PNG / r / n / x1a / n / x00 / x00 / x00 / rIHDR / x00 / x00 / x02 / x80 / x00 / x00 / x01 / xe0 / x08 / x06 / x00 / x00 / x005 / xd1 / xdc / xe4 / x00 / x00 / x00 / x04sBIT / x08 / x08 / x08 / x08 / x08d / x88 / x00 / x00 / x00 / tpHYs / x00 / x00 / x0fa / x00 / x00 / x00 / x0fa / x01 / xa8