新西兰服务器

如何在Django中Pyecharts生成图表


如何在Django中Pyecharts生成图表

发布时间:2022-02-28 15:39:59 来源:高防服务器网 阅读:64 作者:iii 栏目:开发技术

这篇“如何在Django中Pyecharts生成图表”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何在Django中Pyecharts生成图表”文章吧。

因为pyecharts是支持python的一种可视化,但是想要将其放入网页中,主要有两种方法

(1)在网页中假如iframe,将网页嵌在iframe中(该方法不具体描述)

(2)使用json传输到前端,对其进行展示

具体描述第2种方法如下:

假设用pyecharts画一张折线图

def line():      attr = ['教师', '教授', '副教授', '博导', '硕导', '国家级奖项', '省部级奖项', '院士', '荣誉学者', '专利']      v1 = [100, 20, 15, 50, 40, 200, 200, 4, 5, 100]      v2 = [150, 30, 40, 50, 30, 250, 200, 1, 2, 110]      line = Line(width=1834, height=400)      line.add('北京大学', attr, v1,               mark_point=['average', 'max', 'min'],  # 标注点:平均值,最大值,最小值               mark_point_symbol='diamond',  # 标注点:钻石形状               mark_point_textcolor='#40ff27')  # 标注点:标注文本颜色      line.add('清华大学', attr, v2,               mark_point=['average', 'max', 'min'],               mark_point_symbol='arrow',               xaxis_name_size=20,               yaxis_name_size=20,               )      return line

接下来,想要用其传到前端,进行显示,需要在Django的app的views.py中添加代码。

def university_picture(request):          template = loader.get_template('search/test.html')          l = line() 			#生成图像实例          context = dict(              myechart=l.render_embed(),  #必须要有              host=REMOTE_HOST,	#若前端加载了对应的echarts库,可以不需要这一句和下一句              script_list=l.get_js_dependencies(),#以上两句代码的目的是下载该图标对应的一些echarts库          )          return HttpResponse(template.render(context, request))

后端代码在这里就介绍完,底下需要介绍一下前端的代码。
前端第一步,加载头文件:

{% for jsfile_name in script_list %}  <script type="text/javascript" src="https://atts.gaofangfuwuqi.com/attachments/{{ jsfile_name }}.js"></script>  {% endfor %}

第二步,将图标显示出来(注:以下代码的class以及id,可以根据自己的网页结构进行替换,不需要相同)

<div class="row placeholders" id="pic">                  {{myechart|safe}}  </div>

以上就是关于“如何在Django中Pyecharts生成图表”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注高防服务器网行业资讯频道。

[微信提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]
[