【需求】 : 页面显示对应地区的地图,给地图添加边框以及实现散点图。
【代码】:
function _showMap(name,data){
//获取数据
var sumBewriteCode =getSqlCode(scop.sfun,"map");
var dataMap = getMapChart(sumBewriteCode,queryJsonStr);
var list = dataMap.list;
//数据放到echart中
var series ={type:'scatter',mapType:'散点图',coordinateSystem:'geo',data:[]};
var visualMap=[];
series[0]=_createMap(name);
visualMap=_visualMap(name);
if(dataMap.list.length>0){
for(var i=0;i<list.length;i++){
var item=list[i];
var x =item.lon;
var y=item.lat;
var value=item.tbmj;
series[0].data.push([x,y,series]);
}
}
_registerMap(series,visualMap,dataCli);
}
function _registerMap(series,visualMap,dataCli){
var ext=parseExtext(dataCli.EXTENSTONS);
var geo =[];
//获取地区整体数据
var hdqq =$.parseJSON($.ajax({
url:'./hdqq.json',
data:'',
async:false
}).responseText);
echarts.registerMap("hdqq",hdqq);
geo.push({
map:"hdqq",
roam:'false',
zoom:1.2,
silent:true,
lable:{
normal:{
show:true
},
itemStyle:{
normal:{
show:true,
borderColor:'#73C5FF',
areaColor:'#2C75FF',
borderWidth:1,
shdowBlur:20,
shadowColor:'#F2F2F0',
}
}
}
regions: [{
name: '海淀镇',
itemStyle: {
normal:{
/*color: {
type: 'linear',
x: 0,
y: 0,
x2: 0,
y2: 1,
colorStops: [{
offset: 0, color: 'gray' // 0% 处的颜色
}, {
offset: 1, color: 'blue' // 100% 处的颜色
}],
globalCoord: false // 缺省为 false
},*/
color: {
type: 'radial',
x: 0.5,
y: 0.5,
r: 0.5,
colorStops: [{
offset: 0, color: 'red' // 0% 处的颜色
}, {
offset: 1, color: 'blue' // 100% 处的颜色
}],
globalCoord: false // 缺省为 false
},
areaColor: 'red'
}
}
}]
});
//类似获取子区域的数据以及叠加的数据
//把需要叠加的数据添加到子区域数据中,注入echarts并设置样式。全都和上面操作一样。
var myMap = echats.init(document.getElementById('map'));
var option={
geo:geo,
visualMap:visualMap,
backgroundColor:'',
series:series,
}
}
【效果图】: