ECharts 简单的使用

Posted IronMenPHP

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ECharts 简单的使用相关的知识,希望对你有一定的参考价值。

多参考菜鸟教程

1.引入文件

  <script src="https://cdn.staticfile.org/echarts/4.3.0/echarts.min.js"></script>
    <script src="https://www.runoob.com/static/js/wonderland.js"></script>
    <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>

2.html

extend name='bank/index' /
block name="title"<title>统计 </title>/block
block name="nav"
__block__
<form action=":url('count')">
<div class="layui-form-item" style="margin-top: 30px">
    <div class="layui-inline" >
        <label class="layui-form-label"></label>
        <div class="layui-input-inline" style="width: 100px;">
            <input type="date" name="time_min" placeholder="查询起始日期" autocomplete="off" class="layui-input">
        </div>
        <div class="layui-form-mid">-</div>
        <div class="layui-input-inline" style="width: 100px;">
            <input type="date" name="time_max" placeholder="查询截至日期" autocomplete="off" class="layui-input">
        </div>
    </div>
    <button  type="submit" id="sendtime" class="layui-btn layui-btn-warm">查询</button></form>
<script>
// $('#sendtime').click(function () 
//     var  time_min = $("input[name='time_min']").val();
//     var  time_max = $("input[name='time_max']").val();
//     console.log(time_min)
//     $.ajax(
//         'url':":url('count')",
//         'data':
//             time_min : time_min,
//             time_max : time_max,
//         ,
//         success:(res)=>
//             console.log(res)
//         
//     )
// )

</script>
</div>
<div style="display: flex">
    <div id="main" style="width: 600px;height:400px;">
    </div>

    <div>
        <p>总金额:    <span id="money_sum">$tenantList.money_sum </span> </p>
        <p>退款金额:    <span  id="money_out">$tenantList.money_out </span></p>
        <p>未消费:     <span  id="money_stop">$tenantList.money_stop </span></p>
        <p>未提现:     <span  id="nogetmoney">$tenantList.nogetmoney </span></p>
        <p>已提现:     <span  id="isgetmoney">$tenantList.isgetmoney </span></p>
    </div>
</div>

<script type="text/javascript">
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementById('main'));
    var sum = Number($('#money_out').text()) + Number($('#money_sum').text()) + Number($('#money_stop').text()) + Number($('#nogetmoney').text()) + Number($('#isgetmoney').text());
    var money_out =  Number($('#money_out').text()) /Number(sum)  * Number(100) ;
    var money_sum = $('#money_sum').text() /Number(sum)  * Number(100) ;
    var money_stop = $('#money_stop').text() /Number(sum)  * Number(100) ;
    var nogetmoney = $('#nogetmoney').text() /Number(sum)  * Number(100);
    var isgetmoney = $('#isgetmoney').text() /Number(sum)  * Number(100) ;
    console.log(money_out);
    myChart.setOption(
        series : [
            
                name: '访问来源',
                type: 'pie',    // 设置图表类型为饼图
                radius: '55%',  // 饼图的半径,外半径为可视区尺寸(容器高宽中较小一项)的 55% 长度。
                data:[          // 数据数组,name 为数据项名称,value 为数据项值
                    value:money_sum, name:'销售总额 '+ money_sum.toFixed(2)+'%',
                    value:money_out, name:'退款金额'+ money_out.toFixed(2) +'%',
                    value:money_stop, name:'未消费'+ money_stop.toFixed(2) +'%',
                    value:nogetmoney, name:'未提现'+ nogetmoney.toFixed(2) +'%',
                    value:isgetmoney, name:'已提现'+ isgetmoney.toFixed(2) +'%',
                ]
            
        ]
    )
</script>

/block

block name="body"

/block

3.后端

 /**
     * @return \\Illuminate\\Contracts\\Foundation\\Application|\\Illuminate\\Contracts\\View\\Factory|\\Illuminate\\View\\View|\\think\\response\\View
     * author: IronMenZFB
     * date:c
     */
    public function count(Request $request)
    
        $time_min = $request->param('time_min');
        $time_max = $request->param('time_max');
        if ($time_min == "" && $time_max == '') 
            $tenantList = Tenant::where('id', self::UID)->find();
         else 
            $tenantList = Tenant::where('id', self::UID)->whereTime('create_time', 'between', [$time_min, $time_max])->find();
        
        return view('bank/bank-count', compact('tenantList'));
    

4.效果

以上是关于ECharts 简单的使用的主要内容,如果未能解决你的问题,请参考以下文章

echarts实现数据区域缩放

echarts图表——矩形树图&仪表盘

echarts简单使用

echarts白色实心环形图(空心饼图)的编写

在JSP中使用Echarts的简单例子

Echart图表使用