Highchart 数据捆绑方法

highcharts中的data是一个json数组:data:[4,1,12,4,3,3,1]
所以在servlet封装json为:

public class AdFromByMdaReportAction extends Action{

    @Override
    public void Perform() throws Exception {
        // TODO Auto-generated method stub
        LinkedHashMap<String, LinkedList<String>> map=new LinkedHashMap<String, LinkedList<String>>();

        LinkedList<String> list=new LinkedList<String>();
        list.add("22");list.add("12");list.add("11");list.add("10");list.add("3");
        map.put("show", list);

        LinkedList<String> list1=new LinkedList<String>();
        list1.add("12");list1.add("32");list1.add("10");list1.add("8");list1.add("5");
        map.put("IndependentAccess", list1);

        LinkedList<String> list2=new LinkedList<String>();
        list2.add("32");list2.add("2");list2.add("10");list2.add("18");list2.add("15");
        map.put("ip", list2);

        LinkedList<String> list3=new LinkedList<String>();
        list3.add("12");list3.add("21");list3.add("30");list3.add("18");list3.add("25");
        map.put("VisitTime", list3);


        JSONObject json=JSONObject.fromObject(map);
        System.out.println(map);

        PrintWriter out=response.getWriter();
        out.print(json);
        out.close();
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

然后在js中,使用ajax请求servlet,然后再生成折线图:

$.ajax({
            type:'POST',
            url:'<%=request.getContextPath()%>/c?action=media.report.AdFromByMdaReportAction',
            data:'',
            dataType:'json',
            success:function(data){
                console.log(data);
                showHIghcharts(data);
            }
        });
        function showHIghcharts(data){
            $('#zhexiantu').highcharts({
                chart:{

                    },
                title:{
                     text:'来源分析—广告(媒体)',
                     x:-20
                    },
                subtitle:{
                     text:'数据来源:afa',
                     x:-20
                    },
                xAxis:{
                    categories:['0:00','4:00','8:00','12:00','16:00','20:00','24:00'],//维度--时间
                    },
                yAxis:{
                    title:{
                        text:'指标'
                    },
                    plotLines:[{
                        value:0,
                        width:1,
                        color:'#eeeee'
                        }]
                    },
                legend:{
                    layout:'vertical',
                    align:'right',
                    verticalAlign:'middle',
                    borderWidth:0
                    },
                series:[{
                    name:'浏览量(PV)',
                    data:eval("[" + data.show + "]")
                    },
                    {
                    name:'独立访客(UV)',
                    data:eval("[" + data.IndependentAccess + "]")
                    },
                    {
                    name:'IP',
                    data:eval("[" + data.ip + "]")
                    },
                    {
                    name:'访问次数',
                    data:eval("[" + data.VisitTime + "]")
                    }, 
                    ]
                })
        }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值