echarts ajax数据加载方法
- 一:
- <!-- 引入 echarts.js -->
- <script type="text/javascript" src="echarts.min.js"></script>
- <!-- 引入jquery.js -->
- <script type="text/javascript" src="jquery-1.12.3.js"></script>
- 二:
- <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
- <div id="main" style="width: 600px;height:400px;"></div>
- 三:
- function showView(){
- $("#view").show();
- //初始化echarts实例
- var myChart = echarts.init(document.getElementById('view'));
- // 显示标题,图例和空的坐标轴
- myChart.setOption({
- title: {
- text: '异步数据加载示例'
- },
- tooltip: {},
- legend: {
- data:['注册数量']
- },
- xAxis: {
- data: []
- },
- yAxis: {},
- series: [{
- name: '注册数量',
- type: 'bar',
- data: []
- }]
- });
- myChart.showLoading(); //数据加载完之前先显示一段简单的loading动画
- var names=[]; //日期数组(实际用来盛放X轴坐标值)
- var nums=[]; //注册数量数组(实际用来盛放Y坐标值)
- $.ajax({
- type: "POST",
- dataType: "JSON",
- url:"${pageContext.request.contextPath}/back/customerData/getViewList.action",
- success:function(data){
- if(data.rows){
- for(var i=0;i<data.rows.length;i++){
- names.push(data.rows[i].registTime); //挨个取出类别并填入类别数组
- }
- for(var i=0;i<data.rows.length;i++){
- nums.push(data.rows[i].registerDay); //挨个取出类别并填入类别数组
- }
- myChart.hideLoading(); //隐藏加载动画
- myChart.setOption({ //加载数据图表
- xAxis: {
- data: names
- },
dataZoom : {
show : true,
realtime : true,
start :70, //数据加载百分比 从70%开始加载 即ajax返回100条数据 只从第70条开始加载 到100条位置 但是可以滑动查看前面70条
end : 100 //数据加载百分比 到100%结束加载
},
- series: [{
- // 根据名字对应到相应的系列
- name: '注册数量',
- data: nums
- }]
- })
- }else{
- msgShow("系统提示", "数据查询错误", "warning");
- }
- },
- });
- //使用制定的配置项和数据显示图表
- myChart.setOption(option);
- }
四:后台Action
- public void getViewList() throws Exception{
- String sql = " SELECT DATE_FORMAT(f.registDate, '%Y-%m-%d') AS registTime,COUNT(f.flowingId) AS registerDay"
- +" FROM shop_invitation_flowerwater AS f"
- +" GROUP BY registTime";
- customerList = customerDataService.findListMapBySql(sql);
- Map<String, Object> jsonMap = new HashMap<String, Object>(); // 定义map
- jsonMap.put("rows", customerList); // rows键 存放每页记录 list
- JsonConfig jsonConfig = new JsonConfig();
- jsonConfig.registerJsonValueProcessor(Date.class, new JSONFormatDate("yyyy-MM-dd HH:mm:ss"));
- JSONObject jo = JSONObject.fromObject(jsonMap, jsonConfig); // 格式化result
- jo.accumulate("isSuccess","true");
- response.setContentType("text/html;charset=utf-8");
- PrintWriter out = response.getWriter();
- out.println(jo.toString());
- out.flush();
- out.close();
- }
echarts ajax数据加载方法的更多相关文章
- echarts异步数据加载(在下拉框选择事件中异步更新数据)
接触echarts 大半年了,从不会到熟练也做过不少的图表,隔了一段时间没使用这玩意,好多东西真心容易忘了.在接触echarts这期间也没有总结什么东西,今天我就来总结一下如何在echart中异步加载 ...
- jquery ajax局部加载方法介绍
[导读] 在jquery中实现ajax加载的方法有很多种,不像以前的js的ajax只有那一种,下面我们介绍jquery ajax实现局部加载方法总结,有需要了解的朋友可参考.例 代码如下复制代码 $ ...
- ECharts动态数据加载
最近有用到ECharts做可视化报表,小结一下 一.准备数据 1.官网下载echarts.min.js 2.引入jquery.js 3.请求用的json数据 { "list":[ ...
- Qlikview 数据加载方法罗列
以下是通常会用到的数据加载的方法,供大家参考: 1. 从文件加载: Data: Load *,RowNo() as InputKey; SQL SELECT ID,TEST,DATECREATED F ...
- Echarts 异步数据加载遇到的问题
看了Echarts官网异步加载数据的Demo var myChart = echarts.init(document.getElementById('main')); // 显示标题,图例和空的坐标轴 ...
- JQuery+ajax数据加载..........
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- echarts 设置数据加载遮罩层
//显示加载数据的loading chart.showLoading({ text: "图表数据正在努力加载...", x ...
- vue.js + ajax 数据加载(纯新手get)
似懂非懂的感觉下撸了一个小demo .(只是单纯的引用vue.js的小demo.)在实践中进步吧! 首先肯定要先看vue的文档,并且知道超超基础的小知识!!!奉上代码: HTML 部分: js的引用: ...
- RE:通过移动端滑动手势实现数据加载
背景: 基于要尝试的移动端项目需要有一个通过上拉下滑手势达成加载不同数据的功能,其涉及到滑动手势和ajax数据加载方面的知识点.故对整个实现过程做一个记录整理.个人JS功底有限,看 ...
随机推荐
- linux中日历命令显示
cal 显示当前月的日历 cal 年份 显示特定一年的年历 [jasmine.qian@]$ cal January 2019 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 ...
- 使用外网访问阿里云服务器ZooKeeper
参考网址: zookeeper单机/集群安装详解 使用外网访问阿里云服务器ZooKeeper 阿里云服务管理控制台 1. 阿里云ECS安装zookeeper 环境:我安装的是zookeeper3.4. ...
- 批处理数据库(利用batch插入2w条数据)
public class Demo02Batch { /* * 批处理 */ public static void main(String[] args) { Connection conn=null ...
- PCA-主成分分析(Principal components analysis)
来自:刘建平 主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一. 1. PCA的思想 PCA顾名思义,就是找出数据里最主要的方面,用数据里 ...
- leecode第二十题(有效的括号)
class Solution { public: bool isValid(string s) { ,end=s.size()-; )//万万没想到,他把空字符串当成true了 return true ...
- python + lisp hy的新手注记2 eval, HyModel and python AST
来自我在Stack Overflow上的提问,https://stackoverflow.com/questions/51675355/how-to-eval-a-cond-case-and-retu ...
- python中装饰器
在介绍装饰器之前,要先了解装饰器的相关基础知识. 嵌套函数: 最后引入一个基本的装饰器的例子: __author__ = "YanFeixu" import time def ti ...
- 线程---local数据隔离
线程之间本身是数据共享的,当多个线程同时修改一份数据的时候,数据就可能不 准确,特别是线程量特别大的时候,为了保证数据准确性: (1) 通过线程锁Lock (2)通过local数据隔离 from th ...
- project euler113
project euler 113 对于1个数字,如果他数位不减或者不增称为bouncy number,比如1233,33210.统计1-10^100中的bouncy number 思路:分为两种 ...
- Python 向列表中添加元素
向列表中添加元素 1.append tabulation1.append('紫霞') ['大圣', '天蓬', '卷帘', '紫霞', '紫霞', '青霞'] 2.insert tabulation1 ...