天津市滨海新区地图echarts 地图配置项内容和展示

可拖拽、缩放、自定义tooltip(注:拖拽时有点卡顿)

配置项如下
      var imgUrl = "/asset/get/s/data-1597998044111-QKRPvTkC7.jpeg";

var uploadedDataURL = "/asset/get/s/data-1597996859368-p2XZDxby3.json";
//地理位置信息
var geoCoordMap = {
    "A城": [117.760945, 39.000893],
    "B城": [117.702878, 39.024217],
    "C城": [117.671833, 39.04137],
    "D城": [117.674276, 39.035316],
    "E城": [117.709346, 39.034083],
    'F城': [117.718545, 39.042154],
    'G城': [117.719695, 39.033411],
    'H城': [117.703022, 39.02276],
    "I城": [117.763101, 39.023769],
    'J城': [117.70834, 38.995173],

};
var geoCoordData = [{
        name: 'A城',
        value: "35",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'B城',
        value: "60",
        info: {
            img: imgUrl
        }
    },

    {
        name: 'C城',
        value: "25",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'E城',
        value: "45",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'D城',
        value: "55",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'F城',
        value: "10",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'G城',
        value: "20",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'H城',
        value: "30",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'I城',
        value: "40",
        info: {
            img: imgUrl
        }
    },
    {
        name: 'J城',
        value: "50",
        info: {
            img: imgUrl
        }
    }
];
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),
                info: data[i].info || {}
            });
        }
    }
    return res;
};
var option = {
    backgroundColor: '#020933',
    title: {
        text: '天津市滨海新区',
        top: 20,
        subtext: '',
        sublink: '',
        left: 'center',
        textStyle: {
            color: '#ccc'
        }
    },
    tooltip: {
        trigger: 'item',
        triggerOn: 'click',
        showDelay: 0, //浮层显示的延迟
        transitionDuration: 0.2, // 提示框浮层的移动动画过渡时间
        enterable: true,
        formatter: function(params) {
            console.log(params)
            if (params.data) {
                let info = params.data.info || {};
                let html = `
          <div>
            <img src="${info.img}" alt="">
            <div>
            <span>名字:</span>
            <span>${params.name}</span>
</div>
<button onclick="lookVideoGo('${params.name}')">查看</button>
					</div>
        `;
                return html
            } else {
                return
            }



        },
        // position: [10, 10],
        backgroundColor: "#fff"
    },
    visualMap: { //图例值控制
        min: 0,
        max: 100,
        calculable: true,
        show: true,
        color: ['#f44336', '#fc9700', '#ffde00', '#ffde00', '#00eaff'],
        textStyle: {
            color: '#fff'
        }
    },
    //地理坐标
    geo: {
        map: 'tjbh',
        type: "map",
        aspectScale: 0.75, //长宽比
        zoom: 1.1,
        roam: false,
        itemStyle: {
            normal: {
                areaColor: '#013C62',
                shadowColor: '#182f68',
                shadowOffsetX: 0,
                shadowOffsetY: 25,
            },
            emphasis: {
                areaColor: '#2AB8FF',
                borderWidth: 0,
                color: 'green',
                label: {
                    show: false
                }
            }
        }
    },
    series: [{
            map: 'tjbh', //使用
            type: 'map',
            label: {
                normal: {
                    show: true,
                    textStyle: {
                        color: '#fff'
                    }
                },
                emphasis: {
                    textStyle: {
                        color: '#fff'
                    }
                }
            },

            itemStyle: {
                normal: {
                    borderColor: '#2ab8ff',
                    borderWidth: 1.5,
                    areaColor: '#12235c'
                },
                emphasis: {
                    areaColor: '#2AB8FF',
                    borderWidth: 0,
                    color: 'green'
                }
            },
            zoom: 1.1,
            roam: true,

        },


        //标记 图形 原点 scatter点 effectScatter涟漪特效
        {

            type: 'scatter',
            coordinateSystem: 'geo',
            symbolSize: 5,
            label: {
                normal: {
                    formatter: '{b}',
                    position: 'right',
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            hoverAnimation: true,
            itemStyle: {
                normal: {
                    color: '#fff'
                }
            },
            zlevel: 1,
            data: convertData(geoCoordData)
        },
        //标记图形 大头针
        {
            type: 'scatter',
            coordinateSystem: 'geo',
            symbol: 'pin', //标记的图形 图片参考:https://echarts.apache.org/zh/option.html#series-scatter.symbol
            symbolSize: [40, 40],
            label: {
                normal: {
                    show: true,
                    textStyle: {
                        color: '#fff',
                        fontSize: 9,
                    },
                    formatter(value) {
                        return value.data.value[2]
                    }
                }
            },
            hoverAnimation: true,
            itemStyle: {
                normal: {
                    color: '#D8BC37', //标志颜色
                    // shadowBlur: 10,
                    // shadowColor: '#333'
                }
            },
            zlevel: 1,
            data: convertData(geoCoordData)
        }
    ]
};
var lookVideoGo = function(name) {
    console.log(name)
}
var getData = function() {
    $.get(uploadedDataURL, function(geojson) {
        echarts.registerMap('tjbh', geojson);
        myChart.setOption(option);
    })
}

getData()

myChart.on('georoam', function(params) {
    var option = myChart.getOption(); //获得option对象
    if (params.zoom != null && params.zoom != undefined) { //捕捉到缩放时
        option.geo[0].zoom = option.series[0].zoom; //下层geo的缩放等级跟着上层的geo一起改变
        option.geo[0].center = option.series[0].center; //下层的geo的中心位置随着上层geo一起改变
    } else { //捕捉到拖曳时
        option.geo[0].center = option.series[0].center; //下层的geo的中心位置随着上层geo一起改变
    }
    myChart.dispatchAction({
        type: 'restore'
    })
    myChart.setOption(option); //设置option
});
    
截图如下