如何在Django中输出matplotlib生成的图片

来源:互联网 发布:淘宝上的胆前级哪个好 编辑:程序博客网 时间:2024/06/07 03:34

下面的代码片段是直接在Django中输出matplotlib生成的图片,网上很多种方法都是先生成图片再调用,感觉不是那么直接。
环境:Python2.7,Django1.83
该文件为views.py文件,函数映射按实际设置。

from django.shortcuts import renderfrom django.http import HttpResponsefrom matplotlib.figure import Figure                      from matplotlib.backends.backend_agg import FigureCanvasAggfrom matplotlib.dates import DateFormatterimport matplotlib.pyplot as pltimport randomimport 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
阅读全文
1 0
原创粉丝点击