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


Posted in Python onMay 24, 2018

下面的代码片段是直接在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生成的图片方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现通过pil模块对图片格式进行转换的方法
Mar 24 Python
在Python的setuptools框架下生成egg的教程
Apr 13 Python
部署Python的框架下的web app的详细教程
Apr 30 Python
Python中shutil模块的常用文件操作函数用法示例
Jul 05 Python
python中实现精确的浮点数运算详解
Nov 02 Python
python opencv捕获摄像头并显示内容的实现
Jul 11 Python
pytorch制作自己的LMDB数据操作示例
Dec 18 Python
将pymysql获取到的数据类型是tuple转化为pandas方式
May 15 Python
python实现学生管理系统开发
Jul 24 Python
Python改变对象的字符串显示的方法
Aug 01 Python
改变 Python 中线程执行顺序的方法
Sep 24 Python
详解Pymongo常用查询方法总结
Jan 29 Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
May 24 #Python
Python获取系统所有进程PID及进程名称的方法示例
May 24 #Python
好的Python培训机构应该具备哪些条件
May 23 #Python
Python实现的根据IP地址计算子网掩码位数功能示例
May 23 #Python
Python加载带有注释的Json文件实例
May 23 #Python
Python实现判断一行代码是否为注释的方法
May 23 #Python
对python的文件内注释 help注释方法
May 23 #Python
You might like
收听短波不可能有声音清晰的品质吗
2021/03/01 无线电
解决php中Cannot send session cache limiter 的问题的方法
2007/04/27 PHP
在字符串指定位置插入一段字符串的php代码
2010/02/16 PHP
PHP中4个加速、缓存扩展的区别和选用建议
2014/03/12 PHP
PHP基于redis计数器类定义与用法示例
2018/02/08 PHP
JavaScript 应用技巧集合[推荐]
2009/08/30 Javascript
将string解析为json的几种方式小结
2010/11/11 Javascript
CSS(js)限制页面显示的文本字符长度
2012/12/27 Javascript
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
JavaScript实现GriwView单列全选(自写代码)
2013/05/13 Javascript
jquery.cookie() 方法的使用(读取、写入、删除)
2013/12/05 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
JavaScript日期时间格式化函数分享
2014/05/05 Javascript
js实现对table的增加行和删除行的操作方法
2016/10/13 Javascript
bootstrap modal弹出框的垂直居中
2016/12/14 Javascript
详解webpack-dev-server 设置反向代理解决跨域问题
2018/04/18 Javascript
vue2.0$nextTick监听数据渲染完成之后的回调函数方法
2018/09/11 Javascript
laypage.js分页插件使用方法详解
2019/07/27 Javascript
NestJs使用Mongoose对MongoDB操作的方法
2021/02/22 Javascript
[01:48]完美圣典齐天大圣至宝宣传片
2016/12/17 DOTA
[06:57]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD 选手采访
2021/03/11 DOTA
Python新手们容易犯的几个错误总结
2017/04/01 Python
python之pandas用法大全
2018/03/13 Python
python虚拟环境迁移方法
2019/01/03 Python
Python3爬虫全国地址信息
2019/01/05 Python
使用Python Pandas处理亿级数据的方法
2019/06/24 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
2019/08/01 Python
python elasticsearch环境搭建详解
2019/09/02 Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
2020/09/23 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
2020/12/18 Python
物业管理工作方案
2014/05/10 职场文书
毕业生代领毕业材料的授权委托书
2014/09/29 职场文书
2015年乡镇民政工作总结
2015/05/13 职场文书
MySQL主从复制断开的常用修复方法
2021/04/07 MySQL
python基础学习之生成器与文件系统知识总结
2021/05/25 Python
Pytorch DataLoader shuffle验证方式
2021/06/02 Python