zoukankan      html  css  js  c++  java
  • Echarts地图气泡显示不同区域数据

    完成效果图

    复制代码; "复制代码")

    var data=[{"name":"耒阳市","value":762},{"name":"衡东县","value":738},{"name":"雁峰区","value":3891},{"name":"衡山县","value":232},{"name":"石鼓区","value":3240},{"name":"蒸湘区","value":2512},{"name":"衡阳县","value":922},{"name":"祁东县","value":219},{"name":"珠晖区","value":3229},{"name":"南岳区","value":67},{"name":"衡南县","value":739},{"name":"常宁市","value":545}]; //获取衡阳市的地图信息
    function GetGeoMap() { var geoJson = null; var url = "/js/430400_full.json";

    MapChart.showLoading();
    $.get(url, null, function (ret) {
        geoJson = ret;
        loadMap(geoJson); // $.getJSON(uploadedDataURL, function(geoJson) {

    });
    } //初始化地图容器
    var MapChart = echarts.init(document.getElementById('main')); //设置地图。
    var loadMap = function (geoJson) {

    echarts.registerMap('tianjin', geoJson);
    MapChart.hideLoading(); var data = MapMarkLine; var xData = []; for (var i = 0; i < data.length; i++) {
        xData.push(data[i].value);
    } var geoCoordMap = { '珠晖区': [112.626324,26.891063], '雁峰区': [112.612241,26.893694], '石鼓区': [112.607635,26.903908], '蒸湘区': [112.570608,26.89087], '南岳区': [112.734147,27.240536], '衡阳县': [112.379643,26.962388], '衡南县': [112.677459,26.739973], '衡山县': [112.86971,27.234808], '衡东县': [112.950412,27.083531], '祁东县': [112.111192,26.787109], '耒阳市': [112.847215,26.414162], '常宁市': [112.396821,26.406773],
    }
    xData.sort(function (a, b) { return a - b;
    }); var min = xData[0], max = xData[xData.length - 1]; var maxSize4Pin = 100, minSize4Pin = 20; var convertData = function (data) { var res = []; for (var i = 0; i < data.length; i++) { var geoCoord = geoCoordMap[data[i].name]; if (geoCoord) {
                res.push({
                    name: data[i].name,
                    value: geoCoord.concat(data[i].value)
                });
            }
        } return res;
    }; var option = {
        title: {
            text: '投资人员分布',
            subtext: '1,2803人',
            x: 'left',
            textStyle: {
                color: '#fff',
                fontSize:13 },
            subtextStyle: {
                color: '#ff9c00',
                fontSize:22 }
        },
        tooltip: {
            trigger: 'item',
            formatter: function (params) { if (typeof (params.value)[2] == "undefined") { return params.name + ' : ' + params.value;
                } else { return params.name + ' : ' + params.value[2];
                }
            }
        }, // legend: {
        // orient: 'vertical',
        // y: 'bottom',
        // x: 'right',
        // data: ['credit\_pm2.5'],
        // textStyle: {
        // color: '#fff'
        // }
        // },

    visualMap: {

            show: true,
            type: 'piecewise',
            pieces: [
                { min: 2000 },
                { min: 1000, max: 1999, },
                { min: 100, max: 999 },
                { max: 99 }, // {min:0,max: 2000},
                // {max:100}// 不指定 min,表示 min 为无限大(-Infinity)。

    ],

            showLabel: true,
            right: '5%',
            bottom: '10%',
            text: [''], // 文本,默认为数值文本

    textStyle: {

                color: '#7B93A7' },
            calculable: true,
            seriesIndex: [1],
            inRange: {
                color: ['#f6e294', '#FFABA6', '#FC6258', '#FA3225']
            }
        },
        geo: {
            show: true,
            map: 'tianjin',
            label: {
                normal: {
                    show: false },
                emphasis: {
                    show: false,
                }
            },
            roam: true,
            itemStyle: {
                normal: {
                    areaColor: '#031525',
                    borderColor: '#fff',
                    borderWidth: 2,
                },
                emphasis: {
                    areaColor: '#56ddff', //鼠标放上去的亮色

    }

            }
        },
        series: [
            {
                name: 'credit\_pm2.5',
                type: 'scatter',
                coordinateSystem: 'geo',
                data: convertData(data),
                symbolSize: function (val) { //var a = (maxSize4Pin - minSize4Pin) / (max - min);
                    //var b = minSize4Pin - a * min;
                    //b = maxSize4Pin - a * max;
                    //return a * val[2] + b;
                    return 15;
                },
                label: {
                    normal: {
                        formatter: '{b}',
                        position: 'right',
                        show: true },
                    emphasis: {
                        show: true }
                },
                itemStyle: {
                    normal: {
                        color: '#FBE805',
                        areaColor: '#FBE805',
                        borderColor: '#FBE805',
                    },
                    emphasis: {
                        areaColor: '#FBE805' }
                },
    
            },
            {
                type: 'map',
                map: 'tianjin',
                geoIndex: 0,
                aspectScale: 0.75, //长宽比
                showLegendSymbol: false, // 存在legend时显示

    label: {

                    normal: {
                        show: false },
                    emphasis: {
                        show: false,
                        textStyle: {
                            color: '#fff' }
                    }
                },
                roam: true,
                itemStyle: {
                    normal: {
                        areaColor: '#031525',
                        borderColor: '#3B5077',
                    },
                    emphasis: {
                        areaColor: '#2B91B7' }
                },
                animation: false,
                data: data
            },
            {
                name: '点',
                type: 'scatter',
                coordinateSystem: 'geo',
                symbol: 'pin',
                data: convertData(data),
                symbolSize: function (val) { var a = (maxSize4Pin - minSize4Pin) / (max - min); var b = minSize4Pin - a * min;
                    b = maxSize4Pin - a * max; return a * val[2] + b;//计算并返回气泡大小

    },

                label: {
                    normal: {
                        show: true,
                        formatter: '{@[2]}',//将集合中序号为2的显示在气泡上,默认为1{x,y,val}

    textStyle: {

                            color: '#fff',//文字颜色
                            fontSize: 9,
                        }
                    }
                },
                itemStyle: {
                    normal: {
                        color: '#5d2bb5', //标志颜色

    }

                },
                zlevel: 6,
               
            },
            {
                name: 'Top 5',
                type: 'effectScatter',
                coordinateSystem: 'geo',
                data: convertData(data.sort(function (a, b) { return b.value - a.value;
                }).slice(0, 5)),
                symbolSize: function (val) { //var a = (maxSize4Pin - minSize4Pin) / (max - min);
                    //var b = minSize4Pin - a * min;
                    //b = maxSize4Pin - a * max;
                    //return a * val[2] + b;
                    return 15;
                },
                showEffectOn: 'render',
                rippleEffect: {
                    brushType: 'stroke' },
                hoverAnimation: true,
                label: {
                    normal: {
                        formatter: '{b}',
                        position: 'right',
                        show: true }
                },
                itemStyle: {
                    normal: {
                        color: '#fbe903',
                        shadowBlur: 10,
                        shadowColor: '#dece00' }
                },
                zlevel: 1 },
    
        ]
    };
    
    MapChart.setOption(option);
    GetUserCountByAre("");

    }

  • 相关阅读:
    python中函数中的实参和形参以及默认参数和收集参数
    数组的三种初始化方式
    python :列表的近亲,元组tuple
    python :列表的近亲,元组tuple
    python中的列表,添加元素,获取元素,删除元素,列表分片,常用操作符
    python中的列表,添加元素,获取元素,删除元素,列表分片,常用操作符
    python中的分支和循环:for 循环,while循环,三元操作符,断言,assert关键字,rang()函数总结
    python中的分支和循环:for 循环,while循环,三元操作符,断言,assert关键字,rang()函数总结
    用python制作打飞机游戏
    用python制作打飞机游戏
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13309159.html
Copyright © 2011-2022 走看看