echarts實(shí)現(xiàn)各個省份地圖之廣東省(海南島顯示過小問題解決)

各省份json:
http://datav.aliyun.com/portal/school/atlas/area_selector#&lat=22.65267050733856&lng=114.18983459472656&zoom=10

html部分

<div id="main" style="width:100%;height:100%;padding-top:10px;box-sizing: border-box;"></div>

js部分


initMap();
    var hainan="廣東"
// 地圖
    function initMap(){
    //地圖上顯示的數(shù)據(jù)
    var dataJson=[
        {name: '廣州市',value: 100 },{name: '韶關(guān)市',value: 450 },  
        {name: '深圳市',value: 345 },{name: '珠海市',value: 535 },  
        {name: '汕頭市',value: 320 },{name: '佛山市',value: 234 },  
        {name: '江門市',value: 189 },{name: '湛江市',value: 99 },  
        {name: '茂名市',value: 79 },{name: '肇慶市',value: 190 },  
        {name: '惠州市',value: 390 },{name: '梅州市',value: 360 },
        {name: '汕尾市',value: 269 },{name: '河源市',value: 269 },
        {name: '陽江市',value: 269 },{name: '清遠(yuǎn)市',value: 269 },
        {name: '東莞市',value: 269 },{name: '中山市',value: 269 },
        {name: '潮州市',value: 269 },{name: '揭陽市',value: 269 },
        {name: '云浮市',value: 269 }
    ];
    //獲取市的地圖信息
    window.onload = function GetGeoMap() {
        var geoJson = null;
//從上面json鏈接獲取url就可以換省份;
        var url = "https://geo.datav.aliyun.com/areas_v3/bound/460000_full.json";
        MapChart.showLoading();
        $.get(url, null, function (ret) {
            geoJson = ret;
            loadMap(geoJson);
        });
    }
//初始化地圖容器
MapChart = echarts.init(document.getElementById('main'));
//設(shè)置地圖。
var loadMap = function (geoJson) {
    echarts.registerMap('guangdong', geoJson);
    MapChart.hideLoading();
    var data = dataJson;
    //氣泡點(diǎn)的位置
    var geoCoordMap = {
            '廣州市':[120.171465,30.215236],
            '韶關(guān)市':[120.172763,30.326271],
            '深圳市':[120.027376,30.132934],
            '珠海市':[120.204053,30.374697],
            '汕頭市':[120.362633,30.276603],
            '佛山市':[120.198623,30.166615],
            '江門市':[120.150693,29.962932],
            '湛江市':[119.801737,30.421187],
            '茂名市':[119.949869,29.849871],
            '肇慶市':[119.315101,30.231153],
            '惠州市':[119.585045,29.797437],
            '梅州市':[118.624346,29.404177],
            '汕尾市':[119.279089,29.472284],
            '河源市':[119.279089,29.472284],
            '陽江市':[119.279089,29.472284],
            '汕尾市':[119.279089,29.472284],
            '河源市':[119.279089,29.472284],
            '陽江市':[119.279089,29.472284],
            '清遠(yuǎn)市':[119.279089,29.472284],
            '東莞市':[119.279089,29.472284],
            '中山市':[119.279089,29.472284],
            '潮州市':[119.279089,29.472284],
            '揭陽市':[119.279089,29.472284],
            '云浮市':[119.279089,29.472284]
    }
    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 low=12;
    var high=600;
    var option = {
        tooltip: {
            trigger: 'item',
            //鼠標(biāo)放上去顯示的數(shù)據(jù)和文字
            formatter: function (params) {
                if (typeof (params.value)[2] == "undefined") {
                    return params.name + ' : ' + params.value;
                } else {
                    return params.name + ' : ' + params.value[2];
                }
            }
        },
        //在地圖旁顯示的數(shù)據(jù)
        visualMap: {
          show: true,
          calculable: false,//數(shù)值是否展示
          map: 'china',
          type: 'continuous',
          orient: 'horizontal', //控制條橫向
          min: low,
          max: high,
          left: 'left',
          top: 'top',    
          text: [high, low],   
          inRange: {
            color: ['#C4E4FC','#54A4DE']
          },
          textStyle:{
             color:'#999999'
          },
          label: {
            show: false
          },
          emphasis:{
            label:{
              show: false,
            }
          },
          roam: false,
        },
        series: [
            {
                type: 'map',
                map: 'guangdong',
                geoIndex: 0,
                aspectScale: 0.75, //長寬比
                showLegendSymbol: true, // 存在legend時顯示
                label: {
                    normal: {
                        show:true,
                        textStyle: {
                            color: '#fff',
                            fontSize: 9,
                        }
                    },
                    emphasis: {
                        show: true,
                        textStyle: {
                            color: '#fff'
                        }
                    }
                },
                roam: false,
                itemStyle: {
                    normal: {
                        areaColor: '#C4E4FC',
                        borderColor: '#fff',
                        borderWidth: 1,
                    },
                    emphasis: {
                        areaColor: '#55A4DE'
                    }
                },
                animation: false,
                data: data
            },

        ]
    };
//判斷是否海南省
    if(hainan=='海南'){
        option.series[0].center = [109.844902, 19.0392];
        option.series[0].layoutCenter = ['35%', '50%'];
        option.series[0].layoutSize = "500%";
    } else { //非顯示海南時,將設(shè)置的參數(shù)恢復(fù)默認(rèn)值
      option.series[0].center = undefined;
      option.series[0].layoutCenter = undefined;
      option.series[0].layoutSize = undefined;
}

    MapChart.setOption(option);
}
}



?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容