首頁 > 後端開發 > php教程 > PHP如何使用Echarts產生資料統計報表

PHP如何使用Echarts產生資料統計報表

藏色散人
發布: 2023-04-09 15:38:02
轉載
6777 人瀏覽過

echarts統計,簡單範例

推薦:《PHP影片教學

先看下效果圖

看下程式碼

HTML頁面  為ECharts準備一個Dom,寬高自訂

<div class="panel panel-info">
  <div class="panel-body">
    <div id="echart_show" style="height:500px"></div>
  </div>
</div>
登入後複製

js檔案可以參考官網,或是在這裡下載,引進

<script type="text/javascript" src="__ROOT__/Public/admin/lib/jquery/nowdatachars/echarts-all.js"></script>
登入後複製

以下是具體方法

<script type="text/javascript">

    var date = [],num = [];
    $(document).ready(function () {
        // 绘制反馈量图形
        var init_echarts = function () {
            var refreshChart = function (show_data) {
                my_demo_chart = echarts.init(document.getElementById(&#39;echart_show&#39;));

                my_demo_chart.showLoading({
                    text: &#39;加载中...&#39;,
                    effect: &#39;whirling&#39;
                });

                var echarts_all_option = {
                    title: {
                        text: &#39;&#39;,
                        subtext: &#39;用户走势&#39;
                    },
                    tooltip: {
                        trigger: &#39;axis&#39;
                    },
                    legend: {
                        data: [&#39;用户数&#39;, &#39;用户消耗&#39;]
                    },
                    toolbox: {
                        show: true,
                        feature: {
                            mark: {show: true},
                            dataView: {show: true, readOnly: false},
                            magicType: {show: true, type: [&#39;line&#39;, &#39;bar&#39;]},
                            restore: {show: true},
                            saveAsImage: {show: true}
//                            myTool2: {
//                                show: true,
//                                title: &#39;自定义扩展方法&#39;,
//                                icon: &#39;image://http://echarts.baidu.com/images/favicon.png&#39;,
//                                onclick: function (){
//                                    alert(&#39;自定义&#39;)
//                                }
//                            }
                        }
                    },
                    dataZoom: {
                        show: false,
                        start: 0,
                        end: 100
                    },
                    xAxis: [
                        {
                            type: &#39;category&#39;,
                            boundaryGap: true,
                            data: show_data[1]
                        },
                        {
                            type: &#39;category&#39;,
                            boundaryGap: true,
                            data: show_data[1]
                        }
                    ],
                    yAxis: [
                        {
                            type: &#39;value&#39;,
                            scale: true,
                            name: &#39;用户数&#39;,
                            boundaryGap: [0, 0.5]
//                            boundaryGap: [0.2, 0.2]
                        },
                        {
                            type: &#39;value&#39;,
                            scale: true,
                            name: &#39;用户数&#39;,
                            boundaryGap: [0, 0.5]
                        }
                    ],
                    series: [
                        {
                            name: &#39;用户消耗&#39;,
                            type: &#39;bar&#39;,
                            xAxisIndex: 1,
                            data: show_data[0]
                        },
                        {
                            name: &#39;用户数&#39;,
                            type: &#39;line&#39;,
                            xAxisIndex: 1,
                            data:show_data[0]
                        }
                    ]
                };
                my_demo_chart.hideLoading();
                my_demo_chart.setOption(echarts_all_option);
            };

            // 获取原始数据
            $.ajax({
                url:"__CONTROLLER__/getRes",
                async:false,
                dataType:&#39;json&#39;,
                type:&#39;post&#39;,

                success:function(msg){
                    var result = msg.result;
                    if(msg.code == 200){
                        for(var i = 0 ; i < result.length; i++){
                            date.push(result[i].date);
                            num.push(result[i].count);
                            msg[0] = num;
                            msg[1] = date;
                            refreshChart(msg);
                        }
                    }
                }
            });
        };

        // 默认加载
        var default_load = (function () {
            init_echarts();
        })();
    });


</script>
登入後複製

控制器中查詢自己需要的資料(這裡查詢的日期和對應的數量)

//折线统计
    public function getRes(){
        $user = M(&#39;account&#39;);
        $sql = "SELECT date(createTime) AS date,count(*) as count FROM t_account  GROUP BY date ";
        $result = $user->query($sql);
        $this->ajaxReturn(array(&#39;code&#39;=>200,&#39;result&#39;=>$result));
    }
登入後複製

至此,一個簡單的echarts的統計圖就出來了 

對echarts中一些參數不太理解的,大家可以參考官網 https://www.echartsjs.com/option.html#title

以上是PHP如何使用Echarts產生資料統計報表的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:cnblogs.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板