$(function(){ var provinces = ['shanghai', 'hebei','shanxi','neimenggu','liaoning','jilin','heilongjiang','jiangsu','zhejiang','anhui','fujian','jiangxi','shandong','henan','hubei','hunan','guangdong','guangxi','hainan','sichuan','guizhou','yunnan','xizang','shanxi1','gansu','qinghai','ningxia','xinjiang', 'beijing', 'tianjin', 'chongqing', 'xianggang', 'aomen', 'taiwan']; var provincesText = ['上海', '河北', '山西', '内蒙古', '辽宁', '吉林','黑龙江', '江苏', '浙江', '安徽', '福建', '江西', '山东','河南', '湖北', '湖南', '广东', '广西', '海南', '四川', '贵州', '云南', '西藏', '陕西', '甘肃', '青海', '宁夏', '新疆', '北京', '天津', '重庆', '香港', '澳门', '台湾']; var selected = 'china'; mapEcharts(selected); //返回中国地图 // $('.close-back').click(function(e){ // // echarts.init(document.getElementById('cityMap')); // mapEcharts(selected); // console.log(option.series); // }); myCharts.on('click', function (param) { var service =''; //遍历取到provincesText 中的下标 去拿到对应的省js event.stopPropagation(); // for(var i= 0 ; i < provincesText.length ; i++ ){ // if(param.name == provincesText[i]){ // //显示对应省份的方法 // // showProvince(provinces[i]) ; // $('.close-back').show(); // mapEcharts(provinces[i]); // break ; // } // } }); function mapEcharts(name) { // var url = 'map.json'; name == 'china' ? url = '/static/home/libs/json/' + name + '.json' : url = './libs/json/province/' + name + '.json' myCharts = echarts.init(document.getElementById('cityMap')); $.ajaxSettings.async = false; $.get(url,function(data){ var dataMap = data; echarts.registerMap(name, dataMap); myCharts.hideLoading(); var ceshi = [ // 散点数据 (value控制散点大小以及是否在省份地图显示) {name: '青海', value: [98.32, 36.379], size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'qinghai'}, {name: '江西', value: [115.522, 28.479], size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'jiangxi'}, {name: '北京', value: [116.12, 40.879], size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'beijing'}, {name: '河北', value: [115.12, 39.079], size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'hebei'}, {name: '湖南', value: [111.62, 28.179], size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'hunan'}, {name: '河南', value: [113.62, 34.179], size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'henan'}, {name: '广东', value: [113.62, 24.179], size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'guangdong'}, {name: '乌鲁木齐', value: [87.618, 43.793],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'xinjiang'}, {name: '甘肃', value: [97.618, 40.293],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'gansu'}, {name: '西藏', value: [89.618, 30.793],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'xizang'}, {name: '四川', value: [102.532, 32.079],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'sichuan'}, {name: '云南', value: [102.32, 24.379],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'yunnan'}, {name: '辽宁', value: [123.618, 41.793],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'liaoning'}, {name: '山西', value: [112.12, 38.579],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'shanxi'}, {name: '宁夏', value: [105.512, 38.079],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'ningxai'}, {name: '陕西', value: [108.812, 35.079],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'shanxi!'}, {name: '安徽', value: [116.812, 32.579],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'anhui'}, {name: '江苏', value: [119.812, 33.079],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'jiangsu'}, {name: '湖北', value: [112.812, 31.479],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'hubei'}, {name: '贵州', value: [106.633, 26.658],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'guizhou'}, {name: '重庆', value: [106.550, 29.573],size: 100,url:'https://www.baidu.com/',symbol: 'image:///static/home/images/point.png',img:'/static/home/images/demo.jpg',areaname:'chongqing'} ]; var convertData = function (data) { // 处理数据函数 var res = []; for (var i = 0; i < data.length; i++) { var geoCoord = data[i].value; var geoAreaname = data[i].areaname; if ((geoCoord && name==geoAreaname)) { //跳转到省级图标需放大 res.push({ name: data[i].name, value: geoCoord.concat(data[i].size * 101), url:data[i].url, symbol:data[i].symbol, img:data[i].img, areaname:data[i].areaname }); } if(name == 'china'){ //在中国地图上图标显示同value res.push({ name: data[i].name, value: geoCoord.concat(data[i].size), url:data[i].url, symbol:data[i].symbol, img:data[i].img, areaname:data[i].areaname }); } } return res; }; myCharts.setOption(option = { tooltip: { trigger: 'item', enterable: true, //鼠标是否可进入提示框 transitionDuration: 1, //提示框移动动画过渡时间 // triggerOn : 'click', //点击事件 formatter: function(params) { if(params.name && params.value) { //params.data.value[2] > 100目的是为了在省级不弹窗 // var str = '

'+ params.name +'

'; // return str; return ''; } }, backgroundColor: '#fff', extraCssText: 'box-shadow: 0 3px 6px rgba(109, 130, 188,0.6);', padding: 10 }, geo: { // 地图配置 show: true, map: name, label: { normal: { show: false }, emphasis: { show: false } }, roam: false,//控制缩放 itemStyle: { normal: { areaColor: "#6cf", shadowBlur: 1, shadowColor: "#0074BC", shadowOffsetX: 10, shadowOffsetY: 10, }, emphasis: { label: { show: true,//选中状态是否显示省份名称 }, areaColor: "#fff", shadowOffsetX: 10, shadowOffsetY: 10, shadowBlur: 5, borderWidth: 10, shadowColor: "rgba(0, 0, 0, 0.1)" } }, regions: [ { name: "南海诸岛", itemStyle: { // 隐藏地图 normal: { opacity: 0, // 为 0 时不绘制该图形 } }, emphasis: { opacity: 0, }, label: { show: false // 隐藏文字 } }, ] }, series: [ { // 散点配置 name: '数量', type: 'effectScatter', zlevel:2, coordinateSystem: 'geo', symbolSize: function(val){ if(val[2]>100){ return ([20,27]); }else{ return ([0.2*val[2],0.27*val[2]]);//两个参数对应宽高,点击进去省级后对应宽高乘以相应倍数 } }, symbolKeepAspect: true, showEffectOn: 'emphasis', rippleEffect: { brushType: 'stroke' }, label:{ show:true, formatter: '{b}', position:"inside", offset:[0,8], textStyle:{ color:"#FFF" }, }, hoverAnimation: true, data:convertData(ceshi), }, { // 地图配置 name: '地图', type: 'map', mapType: name, // 自定义扩展图表类型 geoIndex: 1, aspectScale: 0.75, // 长宽比 textFixed: { Alaska: [20, -20] }, data:[{name:'湖北',selected:true}], //默认选中 label: { normal: { show: false, textStyle: { color: '#fff' } }, emphasis: { show: false, textStyle: { color: '#000' } } }, itemStyle: { normal: { areaColor: '#4A9DE4', borderColor: '#A2D9FC', borderWidth: 1 }, emphasis: { areaColor: '#A2D9FC', shadowOffsetX: 10, shadowOffsetY: 10, shadowBlur: 5, borderWidth: 2, shadowColor: "#0074BC", borderColor: 'rgba(0, 0, 0, 0)', } }, }, ] }); myCharts.setOption(option); }); } });