Echarts与ajax的联合使用

Echarts与ajax的联合使用,就是先ajax向后台请求数据,然后返回成功后,将数据填充到echarts图表中

ajax请求


        function getAmountData(){
            var dataStr = $("#searchForm").serialize();
            $.ajax({
                type : 'post',
                url : url,
                dataType : 'json',
                data:dataStr,
                async: false,
                traditional :true, 
                error : function(request, textStatus,errorThrown)
                {
                    alert(errotThrown);
                },
                success : function(data) {
                    //console.log(JSON.stringify(data));
                    var result=data.data;
                    var array = [];
                    if(result){
                        for(var i=0;i<result.length;i++){
                            var map ={};
                            map.name =  result[i].name;
                            map.value = result[i].value;
                            array[i]=map;
                        }
                        loadEcharts(array)
                    }
                }
            });
        }

echarts填充数据

/** 加载echarts图表 **/
        function loadEcharts(array) {
            // 基于准备好的dom,初始化echarts实例
            var myChart = echarts.init(document.getElementById('pieChart'));

            option = {
                title : {
                    text: '各区统计',
                    x:'center'
                },
                tooltip : {
                    trigger: 'item',
                    formatter: "{a} <br/>{b} : {c} ({d}%)"
                },
                legend: {
                    orient: 'vertical',
                    left: 'left',
                    data: ['type1','type2']
                },
                series : [
                    {
                        name: '工作统计',
                        type: 'pie',
                        radius : '55%',
                        center: ['50%', '50%'],
                        data:array,
                        itemStyle: {
                            emphasis: {
                                shadowBlur: 10,
                                shadowOffsetX: 0,
                                shadowColor: 'rgba(0, 0, 0, 0.5)'
                            }
                        }
                    }
                ]
            };
            // 使用刚指定的配置项和数据显示图表。
            myChart.setOption(option);

            /*myChart.on('click', function (params) {
                getDataByArea(params.name,params.value);
            });*/
        }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章