django+echarts+ajax异步+显示优化--基本例子

简介:

django+echarts+ajax异步+显示优化--基本例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
< div    style = "height:300px;" id = "echarts-line" ></ div >
 
##定义要显示的地方
 
 
< script  src = "/static/js/echarts.min.js" ></ script
#加载js
 
< script >
     $(function () {
         var server_info;
 
         var myChart = echarts.init(document.getElementById('echarts-line'));
         var option = {
             title: {
                 text: '机柜总数'
             },
             tooltip: {},
             legend: {
                 data:['总数']
             },
             xAxis: {
                 data: {{ name  | safe }}    ##第一次访问页面时,先从后端返回一个最新的数据,这样子就不会需要人们等着更新数据。
             },
             yAxis: {},
             series: [{
                 name: '销量',
                 type: 'bar',
                 data: {{ jq | safe }} ##第一次访问页面时,先从后端返回一个最新的数据
             }]
         };
         myChart.setOption(option, true);
 
{#        myChart.showLoading();#}   ## echarts 的显示加载页面
         setInterval( function () {     ##AJAX去获取数据通过showapi
 
                 $.ajax({
                     type: 'GET',
                     url: '/jigui/showapi',
                     dataType: 'json',
                     success: function (json) {
                         server_info = eval(json);
                     }
                 });
 
                     option.xAxis.data =  server_info.name;   ##赋值
                     option.series[0].data = server_info.jq;
{#                    myChart.hideLoading();#}   ## echarts 的隐藏加载页面
                     myChart.setOption(option, true);
 
                 }, 2000);  ##每隔2秒 获取一次,重新生成值
 
          window.onresize = function () {
             myChart.resize();      ##根据页面大小重新定义图形大小
         };
     });
 
</ script >



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
@login_required (login_url = "/login.html" )
def  show(request):   ## 展示         第一次访问返回一个数据         
     name_id  =  models.JiguiInfo.objects. filter (id__gt = 0 )
     name  =  []
     jq  =  []
     for  in  name_id:
         name.append(i.name)
         jq.append(i.jq)
     
     ret  =  { 'name' : name,  'jq' : jq}
     
     return  render(request,  'jigui/show.html' ,{ 'name' :name, 'jq' :jq})
 
 
@login_required (login_url = "/login.html" )
def  showapi(request):   ## 展示    API返回数据
     name_id  =  models.JiguiInfo.objects. filter (id__gt = 0 )
     name  =  []
     jq  =  []
     for  in  name_id:
         name.append(i.name)
         jq.append(i.jq)
     
     ret = { 'name' :name, 'jq' :jq}
     return   HttpResponse(json.dumps(ret))









本文转自 295631788 51CTO博客,原文链接:http://blog.51cto.com/hequan/1954409,如需转载请自行联系原作者
目录
相关文章
|
6月前
|
前端开发 JavaScript Java
使用Ajax进行异步交互:提升Java Web应用的用户体验
【4月更文挑战第3天】Ajax技术在Web开发中提升UX,通过与服务器异步交互实现页面局部更新,无需完整刷新。核心组件包括XMLHttpRequest、JavaScript、HTML/CSS及服务器端脚本。在Java Web应用中,可使用原生JavaScript或框架如jQuery、AngularJS实现Ajax请求。Ajax减少页面刷新,实现实时数据更新,即时表单验证和动态UI,显著改善用户体验,是现代Web开发不可或缺的一部分。
85 0
|
6月前
|
前端开发 JavaScript BI
Django教程第5章 | Web开发实战-数据统计图表(echarts、highchart)
使用echarts和highcharts图表库实现折线图、柱状图、饼图和数据集图
164 2
|
6月前
|
前端开发 JavaScript API
Ajax技术的秘密揭秘:异步传输,高效交互
Ajax技术的秘密揭秘:异步传输,高效交互
|
3月前
|
搜索推荐 前端开发 数据可视化
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
本文介绍了一个基于Django框架、协同过滤算法、ECharts数据可视化以及Bootstrap前端技术的酒店推荐系统,该系统通过用户行为分析和推荐算法优化,提供个性化的酒店推荐和直观的数据展示,以提升用户体验。
157 1
|
5月前
|
关系型数据库 MySQL 数据库
数据迁移脚本优化过程:从 MySQL 到 Django 模型表
在大规模的数据迁移过程中,性能问题往往是开发者面临的主要挑战之一。本文将分析一个数据迁移脚本的优化过程,展示如何从 MySQL 数据库迁移数据到 Django 模型表,并探讨优化前后的性能差异。
|
3月前
|
搜索推荐 前端开发 数据可视化
基于Python协同过滤的旅游景点推荐系统,采用Django框架,MySQL数据存储,Bootstrap前端,echarts可视化实现
本文介绍了一个基于Python协同过滤算法的旅游景点推荐系统,该系统采用Django框架、MySQL数据库、Bootstrap前端和echarts数据可视化技术,旨在为用户提供个性化的旅游推荐服务,提升用户体验和旅游市场增长。
288 9
基于Python协同过滤的旅游景点推荐系统,采用Django框架,MySQL数据存储,Bootstrap前端,echarts可视化实现
|
3月前
|
负载均衡 应用服务中间件 网络安全
Django后端架构开发:Nginx服务优化实践
Django后端架构开发:Nginx服务优化实践
61 2
|
3月前
|
前端开发 JavaScript Java
Ajax进行异步交互:提升Java Web应用的用户体验
Ajax 技术允许在不重载整个页面的情况下与服务器异步交换数据,通过局部更新页面内容,极大提升了 Java Web 应用的响应速度和用户体验。本文介绍 Ajax 的基本原理及其实现方式,包括使用 XMLHttpRequest 对象发送请求、处理响应数据,并在 Java Web 应用中集成 Ajax。此外,还探讨了 Ajax 如何通过减少页面刷新、实时数据更新等功能改善用户体验。
73 3
|
5月前
|
数据采集 存储 数据库
优化 Django 模型设计:解决重复爬虫任务和商品数据
在开发数据采集(爬虫)应用时,我们常常面临这样一个问题:不同用户提交了相同的采集任务。为了避免在数据库中存储重复的 URL 和商品数据,我们需要优化模型设计。本文将介绍如何设计 Django 模型,以解决这个问题,并确保数据的一致性和完整性。
下一篇
无影云桌面