【郑州校区】大数据离线阶段Day7之模块开发----数据可视化
1. Echarts介绍ECharts是一款由百度前端技术部开发的,基于Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。 提供大量常用的数据可视化图表,底层基于ZRender(一个全新的轻量级canvas类库),创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折线图(区域图)、柱状图(条状图)、散点图(气泡图)、饼图(环形图)、K线图、地图、力导向布局图以及和弦图,同时支持任意维度的堆积和多图表混合展现。
2. Web程序工程结构本项目是个纯粹的JavaEE项目,基于ssm的框架整合构建。使用maven的tomcat插件启动项目。
3. 感受Echarts—简单入门3.1. 下载Echarts从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求,提供了不同打包的下载,如果在体积上没有要求,可以直接下载完整版本。开发环境建议下载源代码版本,包含了常见的错误提示和警告。 3.2. 页面引入EchartsECharts 3 开始只需要像普通的 JavaScript 库一样用 script 标签引入即可。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <!-- 引入 ECharts 文件 --> <script src="echarts.min.js"></script> </head> </html> 3.3. 绘制一个简单的图表在绘图前我们需要为 ECharts 准备一个具备高宽的 DOM 容器: [AppleScript] 纯文本查看 复制代码 <body>
<!-- 为 ECharts 准备一个具备大小(宽高)的 DOM -->
<div id="main" style="width: 600px;height:400px;"></div>
</body> [AppleScript] 纯文本查看 复制代码 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>ECharts</title>
<!-- 引入 echarts.js -->
<script src="echarts.min.js"></script>
</head>
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: 'ECharts 入门示例'
},
tooltip: {},
legend: {
data:['销量']
},
xAxis: {
data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
},
yAxis: {},
series: [{
name: '销量',
type: 'bar',
data: [5, 20, 36, 10, 10, 20]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
</script>
</body>
</html> 不出意外的话你就可以看见如下的图表: 4. 数据可视化的展现课程中带领大家去实现一个从后端到前端展示数据的过程。其他图表类型都是大同小异,大家重点掌握异步数据加载的方法。 几个开发细节注意点: 4.1. Mybatis example 排序问题example.setOrderByClause("`dateStr` ASC"); 查询结果便可以根据dataStr字段正序排列(从小到大) 4.2. Echarts前端数据格式问题注意,当异步加载数据的时候,前端一般需要的是数据格式是数组。一定要对应上。在这里我们可以使用Java Bean封装数据,然后转换成json扔到前端,对应上相应的字段即可。 ObjectMapper om = new ObjectMapper(); beanJson = om.writeValueAsString(bean); 4.3. Controller返回的json @RequestMapping(value="/xxxx",produces="application/json;charset=UTF-8") @ResponseBody 传智播客·黑马程序员郑州校区地址 河南省郑州市 高新区长椿路11号大学科技园(西区)东门8号楼三层
|