Echarts学习 ——legend中data的动态加载

下文一柱状图为例:

横坐标是月份,纵坐标是数值

用    Map<String, Integer> map = new HashMap<String,Integer>();

存放数据库中查到的值  例如:map.put("一月",100);

  List<String> name = new ArrayList<String>();//////////存放所有的x轴的值(如:一月,二月,三月。。)
  List<Integer> data = new ArrayList<Integer>();////存放x轴上月份所对应的值(如:1,2,4。。。)

 while (it.hasNext()) {
Integer key = (Integer) it.next();
name.add(type);///月份

                        data.add(map.get(key));//对用数值

}

然后

 JSONObject jo = new JSONObject();

jo.put("name",name);//这种方式处理之后,在js中就可以data.name的到x轴上的月份,直接赋予data就可以

jo.put("data",data);

return jo.toString();


这样在js中你通过ajax请求这个controller时就可以在success方法中这样写

,success:function(data){

  data = eval('('+data+')'); 
myEcharts.setOption({                
                xAxis:{
                    data:data.name
                },                
                series:[
                    {    
                        name:"",////这个值就是你一开始设置setOption时的值
                        data:data.data
                    }
                ]
            })

}

ps:上文中map与list的写法受限于我的表结构。但是肯定会给你一些灵感

猜你喜欢

转载自blog.csdn.net/zhujiarunm/article/details/79401100