亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Echarts顯示后臺傳送的json數據

1.前台发送请求:

        $.post("{:url('CaseWatch/getData')}",function (data) {
             console.log(data);
        }

2.后台从数据库查询数据(TP框架为例):

        $sql = "SELECT  `subject`,COUNT(`subject`) as subject_num FROM tp_cases GROUP BY `subject`"; //学科统计
        $case_info  = Db::query($sql);   //学科统计
        return $case_info;  //默认返回json数据

3.返回结果如下:
图片描述

4.对返回的数据处理:

    var xData = [];
    var yData = [];
    $.post("{:url('CaseWatch/getData')}",function (data) {
        var length = data.length;
        for (var i = 0; i<length;i++) {
            if(data[i]['subject'] !== null) {
                xData.push(data[i]['subject'])
            }
            if(data[i]['subject_num'] !== null) {
                yData.push(data[i]['subject_num']);
            }
        }
    })

5.生成Echart代码写在函数中:

function getChart () {
        var myChart = echarts.init(document.getElementById('main'));
        // 指定图表的配置项和数据
        var option = {
            title: {
                text: '案例观看信息'
            },
            toolbox:{
                show:true,
                title:'案例信息',
                feature:{
                    dataView:{
                        show:true
                    },
                    saveAsImage:{
                        type:'png',
                        show:true
                    },
                    magicType:{
                        show:true,
                        type:['bar','line']
                    }
                }
            },
            tooltip: {
                show:true,
                trigger:'item'
            },
            legend: {
                data:['数量']
            },
            xAxis: {
                data:xData,
                //数据项太多,斜着显示
                axisLabel:{
                    interval:0,
                    padding:[0,-5],
                    rotate:45,
                },
            },
            yAxis: {},
            series: [{
                name: '数量',
                type: 'bar',
                data:yData,
            }]
        };
        myChart.setOption(option);
    }

5.在封装好数据后调用此函数即可:

$.post("{:url('CaseWatch/getData')}",function (data) {
        var length = data.length;
        for (var i = 0; i<length;i++) {
            if(data[i]['subject'] !== null) {
                xData.push(data[i]['subject'])
            }
            if(data[i]['subject_num'] !== null) {
                yData.push(data[i]['subject_num']);
            }
        }
        getChart();
    });

6.结果如图所示:
图片描述

7.大功告成啦!

點擊查看更多內容
6人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消