当前位置: 移动技术网 > IT编程>脚本编程>Python > 在Django中输出matplotlib生成的图片方法

在Django中输出matplotlib生成的图片方法

2018年06月17日  | 移动技术网IT编程  | 我要评论

黄镇东简历,526799,苏州网站优化

下面的代码片段是直接在Django中输出matplotlib生成的图片,网上很多种方法都是先生成图片再调用,感觉不是那么直接。

环境:Python2.7,Django1.83

该文件为views.py文件,函数映射按实际设置。

from django.shortcuts import render
from django.http import HttpResponse

from matplotlib.figure import Figure      
from matplotlib.backends.backend_agg import FigureCanvasAgg
from matplotlib.dates import DateFormatter
import matplotlib.pyplot as plt

import random
import datetime

# Create your views here.
def gen_mat(request):
 fig=Figure(figsize=(6,6))
 ax=fig.add_subplot(111)
 x=[]
 y=[]
 now=datetime.datetime.now()
 delta=datetime.timedelta(days=1)
 for i in range(10):
  x.append(now)
  now+=delta
  y.append(random.randint(0, 1000))
 ax.plot_date(x, y, '-')
 ax.xaxis.set_major_formatter(DateFormatter('%Y-%m-%d'))
 fig.autofmt_xdate()
 canvas=FigureCanvasAgg(fig)
 response=HttpResponse(content_type='image/png')
 canvas.print_png(response)
 plt.close(fig)
 return response

以上这篇在Django中输出matplotlib生成的图片方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网