北京地图echarts 配置项内容和展示

在地图中标识出北京所有行政区,并使用不同颜色填充

配置项如下
      var option = {
    bmap: {
        center: [116.424966,39.922018],
        zoom: 12,
        roam: true,
        enableMapClick: true
    }
}

myChart.setOption(option);
setTimeout(init, 0)

function init() {
    initMap();
    //makerPoint();
    getBoundary();
    //setTimeout(getBoundary, 1000)
}

function getMap() {
    return myChart.getModel().getComponent('bmap').getBMap();
}

function initMap() {
    var top_left_navigation = new BMap.NavigationControl({
        type: BMAP_NAVIGATION_CONTROL_SMALL
    });
    var map = getMap();

    map.disableDoubleClickZoom();
    return map;
}

var bj = ["中国","东城区","西城区","朝阳区","石景山区","丰台区","海淀区","昌平区","房山区","大兴区","通州区","平谷区","顺义区","怀柔区","密云区","延庆区","门头沟区"]	
  
function getBoundary(){       
	var map = getMap();
    for(var index = 0; index < bj.length; index++){
        var bdary = new BMap.Boundary();
	    bdary.get(bj[index], function(rs){       //获取行政区域
	        //map.clearOverlays();        //清除地图覆盖物       
    	    var count = rs.boundaries.length; //行政区域的点有多少个
    	    if (count === 0) {
    			alert('未能获取当前输入行政区域');
    			return ;
    	    }
            var pointArray = [];
    	    for (var i = 0; i < count; i++) {
    			var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2, strokeColor: "#000000",fillColor:getRandomColor()}); //建立多边形覆盖物
    			map.addOverlay(ply);  //添加覆盖物
    			pointArray = pointArray.concat(ply.getPath());
    	    }    
			map.setViewport(pointArray);    //调整视野  
			              
		});
    }
}

function getRandomColor() {
    return "#" + ("00000" + ((Math.random() * 16777215 + 0.5) >> 0).toString(16)).slice(-6);
}

    
截图如下