thinkphp+echarts生成地图数据

thinkphp+echarts生成地图数据

今天记录下实现地图的动态数据加载功能。

具体代码如下:

HTML代码:

<div id="main" style="width: 100%;height:550px;"></div>

JavaScript代码:

 <script src="__PUBLIC__/echarts/dist/echarts.min.js"></script>
 <script src="__PUBLIC__/echarts/china1.js"></script>
<!--/_footer 作为公共模版分离出去-->

<script type="text/javascript">
var optionMap = {  
        backgroundColor: '#FFFFFF',  
        title: {  
            text: '全国各省市高考录取人数地图展示',  
            subtext: '',  
            x:'center'  
        },  
        tooltip : {  
            trigger: 'item'  
        },  
        
        //左侧小导航图标
        visualMap: {  
            show : true,  
            x: 'left',  
            y: 'center',  
            splitList: [   
                {start: 200, end:250},
                {start: 150, end: 200},  
                {start: 100, end: 150},
                {start: 50, end: 100},  
                {start: 10, end: 50},
                {start: 1, end: 10},  
            ],  
            color: ['#5475f5', '#9feaa5', '#85daef','#74e2ca', '#e6ac53', '#9fb5ea']  
        },  
        
        //配置属性
        series: [{  
            name: '录取人数',  
            type: 'map',  
            mapType: 'china',   
            roam: true,  
            label: {  
                normal: {  
                    show: true  //省份名称  
                },  
                emphasis: {  
                    show: false  
                }  
            },  
            data:[]  //数据
        }]  
    };  
    //初始化echarts实例
    var myChart = echarts.init(document.getElementById('main'));
    //使用制定的配置项和数据显示图表
    myChart.setOption(optionMap);

    $('#tongji').click(function() {
    nianji = $("#nianji").find("option:selected").val();
    cengci = $("#cengci").find("option:selected").val();
    $.post("{:U('dt')}", { "nianji": nianji,"cengci":cengci },function(info){
        //console.log(info);
        myChart.setOption({
            series:[{
                data:info,
            }],
        })
    }, "json");
});
</script> 

后端代码:

public function dt() {    
        if (!empty($_POST)) {
            $nianji = I('nianji');
            $where['nianji'] = $nianji;
            $cengci = I('cengci');
            if ($cengci) {
                $where['cengci'] = $cengci;
            }
            $count = M('Zhaosheng');
            $data = $count->field('lys as name,count(id) as value')->where($where)->order('lys asc')->group('lys')->select();
            //show_bug($data);exit;
            $this->ajaxReturn($data);
        }       
        $this->display();
    }

生成的地图效果如下:
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值