关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » UI前端 »ECharts实现数据图表分析及代码

    ECharts实现数据图表分析及代码

    2015-05-30 00:00:00 出处:纸异兽
    分享

    一、ECharts介绍

    实现对统计数据的图形分析之前用过JFreeChar,但它是用纯java实现编码繁琐且效果不佳,后来又使用过Fusioncharts 报表工具,它是基于Flash的图表组件、以XML为数据、提供丰富的Flash动画作为图标模板,实现简单效果不错但flash是老东西了且浏览器需要flash插件的支持,更关键的是手机端浏览器基本上不支持。最近看到百度提供一套ECharts(Enterprise Charts)商业产品图表库,它是基于ZReader(一个全新的轻量级canvas类库),可在pc和移动端流畅的运行,支持折线图(区域图)、柱状图(条状图)、散点图(气泡图)、K线图、饼图(环形图)等12类图表。

    二、实现应用案例

    下面就结合应用看看ECharts的使用

    案例效果:

    条形图

    使用ECharts实现数据图表分析

    切换折线图

    使用ECharts实现数据图表分析

    查看图形数据

    使用ECharts实现数据图表分析

    三、如何使用ECharts

    1、环境搭建

    下载echarts-2.2.2,官网地址:http://echarts.baidu.com/

    使用ECharts实现数据图表分析

    将build/dist目录下的内容拷贝到项目中 如图所示:

    使用ECharts实现数据图表分析

    2、在sell_char.html页面中引入文件

    chart目录下存放了12种图形的js文件,可根据需要引入,这也是官方推荐的导入方式(模块化单文件引入)

    <head>
    <script src="echarts/dist/echarts.js"></script>
    <script src="jquery/jquery-1.7.2.min.js"></script>
    <script type="text/javascript">
        $(function(){//jquery的文档就绪函数
            // 路径配置
            require.config({
                paths: {
                    echarts: 'echarts/dist'
                } });    
            require(
                [
                    'echarts',//代指echarts设置的路径,即'echarts/dist'
                    'echarts/chart/bar', // 使用柱状图加载bar模块,引入bar.js
                    'echarts/chart/line'//加载折线图,引入line.js文件, 按需加载
                ],
    function (ec) {
              var myChart = ec.init(document.getElementById('sell_data'));
              var option = { //配置选项,使用echarts的关键部分
                        ...
               }
                    myChart.setOption(option);
        });
    </script>
    </head>
    <!-- 为ECharts准备一个具备大小的区域,必须指定高度 -->
    <div id="sell_data" style="height:400px"></div>

    3、sell_char.html完整的代码

     <!-- ECharts单文件引入 -->
    <script src="echarts/dist/echarts.js"></script>
    <script src="jquery/jquery-1.7.2.min.js"></script>
    <script type="text/javascript">
        $(function(){
            //获得后台数据
            var category_data;//类型信息
            var soft_data;//软件部销售数据
            var net_data;//网络部销售数据
            var mobile_data;//移动事业部销售数据
            $.ajax({
                url:'/21-sun/echarts/EChartsDataServelt',
                async:false,
                success: function(data){
                    category_data=data.category;
                    soft_data=data.soft_data;
                    net_data=data.net_data;
                    mobile_data=data.mobile_data;}
                })
            // 路径配置
            require.config({
                paths: {
                    echarts: 'echarts/dist'
                }
            });    
              require(
                [
                    'echarts',
                    'echarts/chart/bar', // 使用柱状图就加载bar模块,按需加载
                    'echarts/chart/line'
                ],
                function (ec) {
                    // 基于准备好的dom,初始化echarts图表
                    var myChart = ec.init(document.getElementById('sell_data')); 
                    var option = {
                        tooltip: {//提示框,鼠标悬浮交互时的信息提示
                            show: true
                        },
    
                        toolbox:{//定义工具按钮
                            show : true,
                            feature : {
                            dataView : {show: true, readOnly: false},//数据信息按钮 magicType : {show: true, //显示折线、柱状图等切换按钮
     type: ['line', 'bar','stack', 'tiled']} } }, legend: {//图例 data:['软件部','网络板块','移动事业部'] }, xAxis : [//x轴设置 { type : 'category',//x轴显示类别 data : category_data //["第一季度","第二季度","第三季度","第四季度"] } ], yAxis : [//y轴设置 { type : 'value' //y轴显示数据值 } ], series : [ { "name":"软件部", "type":"bar", "data":soft_data //[80, 300, 200, 100] }, { "name":"网络板块", "type":"bar", "data":net_data //[50, 200, 120, 200] }, { "name":"移动事业部", "type":"bar", "data":mobile_data //[20, 60, 30, 15] } ] }; // 为echarts对象加载数据 myChart.setOption(option); } ); }); </script> </head> <body> <div id="sell_data" style="height:400px"></div> <!-- ECharts单文件引入 --> </body> </html>

    4、后台EChartsDataServelt代码

    public void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            response.setContentType("text/json; charset=utf-8");
            JSONObject jsonObj=new JSONObject();
            //后台数据,这里给定数据就不从数据库获取了
            Map map=new HashMap();
            map.put("category", new String[]{"第一季度","第二季度","第三季度","第四季度"});
            map.put("soft_data", new int[]{80, 300, 200, 100} ); map.put("net_data", new int[]{50, 200, 120, 200}); map.put("mobile_data",new int[]{20, 60, 30, 15}); jsonObj.putAll(map); response.getWriter().println(jsonObj.toString()); }
    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    hiberfil.sys文件可以删除吗?了解该文件并手把手教你删除C盘的hiberfil.sys文件

    Window 10和 Windows 11哪个好?答案是:看你自己的需求

    盗版软件成公司里的“隐形炸弹”?老板们的“法务噩梦” 有救了!

    帝国CMS7.5编辑器上传图片取消宽高的三种方法

    帝国cms如何自动生成缩略图的实现方法

    Windows 12即将到来,将彻底改变人机交互

    帝国CMS 7.5忘记登陆账号密码怎么办?可以phpmyadmin中重置管理员密码

    帝国CMS 7.5 后台编辑器换行,修改回车键br换行为p标签

    Windows 11 版本与 Windows 10比较,新功能一览

    Windows 11激活产品密钥收集及专业版激活方法

    IT头条

    无线路由大厂 TP-Link突然大裁员:补偿N+3

    02:39

    Meta 千万美金招募AI高级人才

    00:22

    更容易爆炸?罗马仕充电宝被北京多所高校禁用,公司紧急回应

    17:19

    天衍”量子计算云平台,“超算+量算” 告别“算力孤岛时代”

    18:18

    华为Pura80系列新机预热,余承东力赞其复杂光线下的视频拍摄实力

    01:28

    技术热点

    MySQL基本调度策略浅析

    MySQL使用INSERT插入多条记录

    SQL Server高可用的常见问题

    3D立体图片展示幻灯片JS特效

    windows 7上网看视频出现绿屏的原因及解决方法

    windows 7 64位系统的HOSTS文件在哪里?想用它加快域名解析

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。