A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

【郑州校区】大数据离线阶段Day7之模块开发----数据可视化

1. Echarts介绍
ECharts是一款由百度前端技术部开发的,基于Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。
提供大量常用的数据可视化图表,底层基于ZRender(一个全新的轻量级canvas类库),创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折线图(区域图)、柱状图(条状图)、散点图(气泡图)、饼图(环形图)、K线图、地图、力导向布局图以及和弦图,同时支持任意维度的堆积和多图表混合展现。

2. Web程序工程结构
本项目是个纯粹的JavaEE项目,基于ssm的框架整合构建。使用maven的tomcat插件启动项目。

3. 感受Echarts—简单入门3.1. 下载Echarts
从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求,提供了不同打包的下载,如果在体积上没有要求,可以直接下载完整版本。开发环境建议下载源代码版本,包含了常见的错误提示和警告。
3.2. 页面引入Echarts
ECharts 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>
然后就可以通过 echarts.init 方法初始化一个 echarts 实例并通过 setOption 方法生成一个简单的柱状图,下面是完整代码。
[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号楼三层
联系电话 0371-56061160/61/62
来校路线  地铁一号线梧桐街站A口出


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马