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功底有限,看 ...
随机推荐
- 前端html5/css基础知识
https://www.cnblogs.com/clschao/articles/10073124.html
- Spring boot Value注入 未整理 待完善
Springboot 热部署Springboot为开发者提供了一个名叫 spring-boot-devtools来使Springboot应用支持热部署,提供开发者的开发效率,无需手动重启Spring ...
- Windows操作系统电脑的运行代码大全
CMD命令使用方法:开始->运行->键入cmd.或者win键+R->键入cmd gpedit.msc—–组策略 sndrec32——-录音机 Nslookup——-IP地址侦测器 e ...
- VC.时间(网页内容收集)
1.VC++获得当前系统时间的几种方案_记忆53秒_新浪博客.html(http://blog.sina.com.cn/s/blog_676271a60101i0hb.html) 1.1.内容保存: ...
- 一个请求需要调用两个不同的数据库 添加DbContext
当请求进入application中的方法时 会开启一个工作单元 这里面调用不同的DbContext 会默认使用第一次调用的DbContext 需要手动开启工作单元来隔离两个不同的DbContex ...
- Linux 中 MySQL常用命令
一. 数据库登录mysql -uroot -p二..退出数据库quit 和 exit或ctrl + d三.数据库操作1. 查看所有数据库 show databases;2. 查看当前使用的数据库sel ...
- angular在组件中选择dom元素
想选择 在组件中选择自己template里的dom元素,要使用ElementRef. import { Component, EventEmitter, HostListener, OnIni ...
- 01-python基础知识
1.这两个参数是什么意思:*args,**kwargs?我们为什么要使用它们? 答案 如果我们不确定要往函数中传入多少个参数,或者我们想往函数中以列表和元组的形式传参数时,那就使要用*args:如果我 ...
- RPG游戏中如何判断敌人是否在玩家的攻击范围之内
// 方式1:通过主角和场景中的所有敌人比较 private void AtkCondition1(float _range,float _angle) { // 搜索所有敌人列表(在动态创建敌人时生 ...
- 最大的矩形面积 Maximal Rectangle
2018-09-15 10:23:44 一.Largest Rectangle in Histogram 在求解最大的矩形面积之前,我们先讨论一条最大直方图面积的问题. 问题描述: 问题求解: 解法一 ...