echarts 图表 展示 练习二 (ajax 后台加载数据)
2015-08-06 16:14
501 查看
上次写了基础的图表展示,这次简单介绍一下ajax后台取的数据并展示的练习,一上次为基础。
jsp页面配置和之前一样就有一点不同,讲解一下。
第一步:(不变)
<!-- 引入echarts.js 框架文件 -->
<script type="text/javascript"
src="${path}/js/echarts/build/dist/echarts.js"></script>
<script type="text/javascript" src="${path}/js/jquery-1.11.1.min.js"></script>
第二步:(不变)
<!-- 为模块加载器配置echarts和所需图表的路径 -->
<script type="text/javascript">
require.config({
paths : {
echarts : '${path}/js/echarts/build/dist'
}
});
</script>
第三步:(有变化)
去掉定义方法获取dom的部分 就是这个方法 function(ec) 去掉
<!-- 使用 -->
<script type="text/javascript">
require([
'echarts',
'echarts/chart/bar' // 使用柱状图就加载bar模块,按需加载
]);
</script>
第四步:ajax调用
<script type="text/javascript">
//jsp初始化调用方法
$(document).ready(function(){
//获取展示 图表div 的ID(main)
var myChart = require('echarts').init(document.getElementById('main'));
myChart.showLoading({
text: '正在努力的读取数据中...', //loading话术
});
//ajax get data ing...
var url="${path}/echarts/bar.do";
$.ajax({
type:"post",
url:url,
dataType: "json",
success:function(data){
myChart.hideLoading();
// 图表使用-------------------
var option=data;
myChart.setOption(option);
},
error:function(error){
alert("错误:"+error);
}
});
});
</script>
第五步:springmvc 下 controller 的代码我也贴出来吧
@RequestMapping(value="/bar.do")
public void ajaxtest(HttpServletRequest request,HttpServletResponse response ){
System.out.println("init bar ajaxtest");
PrintWriter out=null;
try {
out=response.getWriter();
String data="{\"tooltip\":{\"show\" : \"true\"},\"legend\":{\"data\":[\"销量\"]},"
+ "\"xAxis\":[{\"type\":\"category\",\"data\":[\"衬衫\",\"羊毛衫\",\"雪纺衫\",\"裤子\",\"高跟鞋\",\"袜子\"]}],"
+ "\"yAxis\":[{\"type\" : \"value\"}],\"series\":[{\"name\":\"销量\",\"type\" : \"bar\",\"data\":[ 7, 23, 123, 3, 44, 69 ]}]}";
System.out.println(data);
//数据输出到前端
out.println(data);
out.flush();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
jsp页面配置和之前一样就有一点不同,讲解一下。
第一步:(不变)
<!-- 引入echarts.js 框架文件 -->
<script type="text/javascript"
src="${path}/js/echarts/build/dist/echarts.js"></script>
<script type="text/javascript" src="${path}/js/jquery-1.11.1.min.js"></script>
第二步:(不变)
<!-- 为模块加载器配置echarts和所需图表的路径 -->
<script type="text/javascript">
require.config({
paths : {
echarts : '${path}/js/echarts/build/dist'
}
});
</script>
第三步:(有变化)
去掉定义方法获取dom的部分 就是这个方法 function(ec) 去掉
<!-- 使用 -->
<script type="text/javascript">
require([
'echarts',
'echarts/chart/bar' // 使用柱状图就加载bar模块,按需加载
]);
</script>
第四步:ajax调用
<script type="text/javascript">
//jsp初始化调用方法
$(document).ready(function(){
//获取展示 图表div 的ID(main)
var myChart = require('echarts').init(document.getElementById('main'));
myChart.showLoading({
text: '正在努力的读取数据中...', //loading话术
});
//ajax get data ing...
var url="${path}/echarts/bar.do";
$.ajax({
type:"post",
url:url,
dataType: "json",
success:function(data){
myChart.hideLoading();
// 图表使用-------------------
var option=data;
myChart.setOption(option);
},
error:function(error){
alert("错误:"+error);
}
});
});
</script>
第五步:springmvc 下 controller 的代码我也贴出来吧
@RequestMapping(value="/bar.do")
public void ajaxtest(HttpServletRequest request,HttpServletResponse response ){
System.out.println("init bar ajaxtest");
PrintWriter out=null;
try {
out=response.getWriter();
String data="{\"tooltip\":{\"show\" : \"true\"},\"legend\":{\"data\":[\"销量\"]},"
+ "\"xAxis\":[{\"type\":\"category\",\"data\":[\"衬衫\",\"羊毛衫\",\"雪纺衫\",\"裤子\",\"高跟鞋\",\"袜子\"]}],"
+ "\"yAxis\":[{\"type\" : \"value\"}],\"series\":[{\"name\":\"销量\",\"type\" : \"bar\",\"data\":[ 7, 23, 123, 3, 44, 69 ]}]}";
System.out.println(data);
//数据输出到前端
out.println(data);
out.flush();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
相关文章推荐
- Codeforces Round #Pi (Div. 2)
- Android Data Binding高级用法-Observable、动态生成Binding Class(三)
- 翻转单链表
- C# 获得Excel工作簿Sheet页面(工作表)集合的名称
- hdu 1274 展开字符串
- ThinkPHP的RBAC权限控制
- 杂了个谈(一)——博客同名GitHub已开通
- crontab 执行scp.exp 失败
- OC语言中的通知
- js运算符|| &&
- MyEclipse 创建基于maven的Web Project工程的若干问题解决方法
- OpenCV ——遍历图像方法
- nginx限制某个IP同一时间段的访问次数
- jquery获取屏幕高度
- CSS3过渡和动画
- nexus配置方法说明
- adb push 。。。显示:No space left on device
- 黑马程序员——数组概述+数组排序+数组查找-第5天
- RHEL 7 中 systemctl 的用法(替代service 和 chkconfig)
- java小程序,用java在指定目录或以及子目录中找出同名文件,java File过滤文件名后找同名文件