• JAVA开发人员画图表总结(ECHARTS)


    随着大数据的到来,越来越多的数据需求需要开发,而这些需求不可避免需要使用JS画出图表,而大多后端JAVA开发人员对JS不太熟悉,导致身心倍受折磨,今天记录以下最近我使用echarts的步骤,供参考:

    一、环境说明

    前端框架:echarts、Jquery

    后端框架:SPRINGMVC

    二、开发过程

    前端代码:

    <!doctype html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    <script src="http://s1.bdstatic.com/r/www/cache/ecom/esl/1-6-10/esl.js"></script>
    </head>
    <body>
        <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
        <div id="main" style="height: 400px"></div>
        <script type="text/javascript">
            $(function() {
                $.ajax({
                    url : "http://www.qunar.com/getJson",  //获取JSON地址
                    dataType : "text",
                    success : function(data) {
                        var result = eval(data);
                        
                        // 路径配置
                        require.config({
                            paths : {
                                'echarts' : 'http://echarts.baidu.com/build/echarts',
                                'echarts/chart/bar' : 'http://echarts.baidu.com/build/echarts'
                            }
                        });
                        var myChart;
                        // 使用
                        require([ 'echarts', 'echarts/chart/bar' // 使用柱状图就加载bar模块,按需加载
                        ], function(ec) {
                            // 基于准备好的dom,初始化echarts图表
                            myChart = ec.init(document.getElementById('main'));
                            // 为echarts对象加载数据 
                            myChart.setOption(result[0]);
                        });                    
                        
                    }
                });
            });
        </script>
    </body>
    </html>

    对于我来说,编写这些JS最困难了。

    1、首先需要AJAX获取数据

    2、需要与echarts相互结合

    3、option这个对象是核心,后端需要生成的也是这个对象。

    获取的后端数据:

    [{"calculable":true,"graphType":null,"legend":{"data":["报表"]},"series":[{"data":[1,2,3],"name":"报表","type":"bar"}],"title":{"color":"red","fontSize":24,"link":"http://www.qunar.com","subText":"报表","text":"去哪儿-报表"},"tootip":{"show":true},"xAxis":{"data":[1,2,3],"type":"category"},"yAxis":{"data":[],"type":"value"}}]

    后端如何生成这些JSON数据就不在这里说了,任何提供REST服务或者SpringMVC都能实现。这里需要注意的是,如果想要长期使用echarts,建议还是好好阅读文档,因为任何的小错误,都可能导致效果相差很大。

  • 相关阅读:
    在未排序的数组中找到第 k 个最大的元素
    区域和检索
    控制台画图程序(可更换笔刷版本)
    循环中的scanf处理了换行符怎么破
    strlen获取字符数组为什么是255
    宽字符输出中文,Devc++解决方法
    区间取最小值最大值-位值和
    模拟鼠标键盘-封装函数
    scanf("%d",a[i]+j)为什么不加取地址符号
    scanf需要多输入一行是什么问题
  • 原文地址:https://www.cnblogs.com/liqiu/p/3761353.html
Copyright © 2020-2023  润新知