ECharts.js + ECharts.java 的基本使用

上代码

<div class="box box-primary">

            <div class="box-header">

    <i class="fa fa-shopping-cart"></i>

                <h2 class="box-title">${requestScope.user.phone}.订单统计表</h2>

                <br />

            <div class="btn-group" role="group" >

             <button class="btn btn-default btn-sm date">全部</button>

       <button class="btn btn-default btn-sm date" >近7天</button>

             <button class="btn btn-default btn-sm date" >近15天</button>

             <button class="btn btn-default btn-sm date" >近30天</button>

            </div>

            </div>

            <div class=""box-body"">

               <div id="orderscharts" style="height: 400px; width: 80%;"></div>

            </div><!-- /.col -->

          </div><!-- /.row -->

<script src="<%=basePath%>common/echarts/echarts.js"></script>  
<script type="text/javascript"> 
 $(function () {
    var myChart;

   $.ajax({

     type:"post",

     
url:"<%=basePath%>admin/usermanagement/ordersecharts${user.id}_0
",

     dataType : 'json',

     success : function(data) {

      if (data != null) {

       var result = eval(data);

       require.config({

        paths : {

         'echarts' : '<%=basePath%>common/echarts',

        }

       });

       require([ 'echarts', 'echarts/chart/bar',  'echarts/chart/line'// 使用柱状图就加载bar模块,按需加载

        ], function(ec) {

         myChart = ec.init(document.getElementById('orderscharts'));

         myChart.setOption(result);

       });

      }else {

       alert("数据异常");

      }

     },

     error : function (data) {

      alert("数据异常");

     }

    }); 

 $(".date").click(function(){

   $(this).parents().children().removeClass("active");

   $(this).addClass("active");

   var type = $(this).index();

  if (type != null) {

   // 图表清空-------------------

   myChart.clear();

   //var myChart = echarts.init(document.getElementById('orderscharts')); 

   var urls = "<%=basePath%>admin/usermanagement/ordersecharts${user.id}_"+type;

   

   $.ajax({

     type:"post",

     url: urls,

     dataType : 'json',

     success : function(data) {

      if (data != null) {

       var result = eval(data);

       require.config({

        paths : {

         'echarts' : '<%=basePath%>common/echarts',

        }

       });

       

       // 使用

       require([ 'echarts', 'echarts/chart/bar',  'echarts/chart/line'// 使用柱状图就加载bar模块,按需加载

       ], function(ec) {

        // 基于准备好的dom,初始化echarts图表

        myChart = ec.init(document.getElementById('orderscharts'));

        // 为echarts对象加载数据 

        myChart.setOption(result);

       }); 

      }else {

       alert("数据异常");

      }

     },

     error : function (data) {

      alert("数据异常");

     }

    });

   }

  });

     
 
});

java

@RequestMapping(value = "/ordersecharts{id}_{type}", method = RequestMethod.POST )

 @ResponseBody

 public Object ordersCharst(@PathVariable Integer id, @PathVariable Integer type ) {

  /**

   * 0  表示全部

   * 1 表示近7天

   * 2 表示近15天

   * 3 表示近30天

   */

  

  User user = userService.getEntityByProperty(" id=:id ", id);

   GsonOption option = new GsonOption();

  // 设置图表标题,并且显示居左

  option.tooltip().trigger(Trigger.axis);

  // toolbox

  option.toolbox().show(true).feature(Tool.mark, new MagicType(Magic.line, Magic.bar).show(true), Tool.restore, Tool.saveAsImage);

  // 设置图例,居中底部显示,显示边框

  option.legend("订单量");

  // x轴

  option.xAxis(new CategoryAxis().data("已取消的订单","待付款的订单","已退款的订单","退款中的订单","已支付的订单","已完成的订单"));

  // y轴

  option.yAxis(new ValueAxis());  

  Bar bar = new Bar();

  bar.name("订单量");

  Object[] obj = userService.getCountOrderTypeByUser(user, type);

  //bar.data(1,5,15,20,25,30);

  bar.data(obj);

  bar.markPoint().data(new PointData().type(MarkType.max).name("最大值"), new PointData().type(MarkType.min).name("最小值"));

  bar.markLine().data(new PointData().type(MarkType.average).name("平均值"));

   option.series(bar);  

  System.out.println(option.toString());  

  return option.toString();

 }

代码真的写得不好。

希望能看到。

看着之前 最好把 Echarts.js 了解下

Echarts - java

http://www.oschina.net/p/echarts-java

你可能感兴趣的:(springMVC,jFinal,ECharts,ECharts-Java,B-JUI)