map.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318
  1. $(function () {
  2. map();
  3. function map() {
  4. // 基于准备好的dom,初始化echarts实例
  5. var myChart = echarts.init(document.getElementById('map'));
  6. var data = [
  7. {name: '乳山寨镇', value: 289},
  8. {name: '夏村镇', value: 129},
  9. {name: '海阳所镇', value: 199},
  10. {name: '白沙滩镇', value: 229},
  11. {name: '大孤山镇', value: 109},
  12. {name: '南黄镇', value: 145},
  13. {name: '冯家镇', value: 210},
  14. {name: '下初镇', value: 271},
  15. {name: '午极镇', value: 156},
  16. {name: '育黎镇', value: 178},
  17. {name: '崖子镇', value: 187},
  18. {name: '诸往镇', value: 161},
  19. {name: '乳山口镇', value: 165},
  20. {name: '徐家镇', value: 172},
  21. {name: '横山后村', value: 58},
  22. {name: '贾家村', value: 72},
  23. {name: '北司马庄', value: 42},
  24. {name: '宋河村', value: 61},
  25. {name: '玉皇山后村', value: 67},
  26. {name: '小庵村', value: 32},
  27. {name: '寨中村', value: 69},
  28. {name: '于家庄村', value: 39},
  29. {name: '胡八庄村', value: 19},
  30. {name: '西圈村', value: 66},
  31. {name: '西周格庄', value: 72},
  32. {name: '石头圈村', value: 17},
  33. {name: '战家夼村', value: 33},
  34. {name: '东秦家庄村', value: 42},
  35. {name: '南夼', value: 55},
  36. {name: '杜家岛村', value: 19},
  37. {name: '海阳所村', value: 50},
  38. {name: '挂子场村', value: 69},
  39. {name: '小石口村', value: 71},
  40. {name: '贾家庄', value: 62},
  41. {name: '赵家庄', value: 33},
  42. {name: '宫家村', value: 49},
  43. {name: '大陶家村', value: 19},
  44. {name: '白沙滩村', value: 66},
  45. {name: '徐家塂村', value: 39},
  46. {name: '常家庄', value: 32},
  47. {name: '水井村', value: 21},
  48. {name: '河南村', value: 41},
  49. {name: '东林家村', value: 51},
  50. {name: '下石灰刘家村', value: 61},
  51. {name: '吴家沟村', value: 71},
  52. {name: '岭上村', value: 22},
  53. {name: '湾头村', value: 32},
  54. {name: '西浪暖村', value: 42},
  55. {name: '朱家屯', value: 52},
  56. {name: '宫家疃', value: 62},
  57. {name: '陈家屯', value: 72},
  58. {name: '上口', value: 23},
  59. {name: '吕格庄', value: 33},
  60. {name: '北高格庄村', value: 43},
  61. {name: '中寨村', value: 53},
  62. {name: '徐家村村', value: 63},
  63. {name: '吴格庄', value: 73},
  64. {name: '西吉子村', value: 24},
  65. {name: '下初村', value: 34},
  66. {name: '东马台石村', value: 44},
  67. {name: '垒中前村', value: 54},
  68. {name: '段家村', value: 64},
  69. {name: '西庄', value: 74},
  70. {name: '黄格庄', value: 25},
  71. {name: '孙家疃村', value: 35},
  72. {name: '于家疃', value: 45},
  73. {name: '石字岘村', value: 55},
  74. {name: '午极村', value: 65},
  75. {name: '杨家庄', value: 75},
  76. {name: '北庄', value: 26},
  77. {name: '塔庄', value: 36},
  78. {name: '北勇家村', value: 46},
  79. {name: '下宋格庄', value: 56},
  80. {name: '南北山村', value: 66},
  81. {name: '西纪村', value: 76},
  82. {name: '南勇家村', value: 27},
  83. {name: '南西屋村', value: 37},
  84. {name: '马石店', value: 47},
  85. {name: '大崮头村', value: 57},
  86. {name: '西涝口村', value: 67},
  87. {name: '哨里村', value: 77},
  88. {name: '河北村', value: 28},
  89. {name: '北寨村', value: 38},
  90. {name: '北地口村', value: 48},
  91. {name: '神童庙村', value: 58},
  92. {name: '姚家埠', value: 68},
  93. {name: '许家村', value: 78},
  94. {name: '冷格庄', value: 29},
  95. {name: '孙家夼', value: 39},
  96. {name: '下石硼村', value: 20},
  97. {name: '流水头村', value: 30},
  98. {name: '南唐家村', value: 40},
  99. {name: '兰家村', value: 50},
  100. {name: '兰家庄', value: 60},
  101. {name: '康家村', value: 45},
  102. {name: '后尹家村', value: 20},
  103. {name: '择村', value: 61},
  104. {name: '前尹家村', value: 46},
  105. {name: '洋村', value: 32},
  106. ];
  107. var geoCoordMap = {
  108. '乳山寨镇':[121.456054,36.886624],
  109. '夏村镇':[121.524251,36.950679],
  110. '海阳所镇':[121.620025,36.813767],
  111. '白沙滩镇':[121.65,36.84],
  112. '大孤山镇':[121.63,36.91],
  113. '南黄镇':[121.79,36.97],
  114. '冯家镇':[121.68,37.03],
  115. '下初镇':[121.60,37.03],
  116. '午极镇':[121.48,37.06],
  117. '育黎镇':[121.43,37.01],
  118. '崖子镇':[121.31,37.08],
  119. '诸往镇':[121.37,36.97],
  120. '乳山口镇':[121.05,36.87],
  121. '徐家镇':[121.76,36.91],
  122. '横山后村':[121.414469,36.810789],
  123. '贾家村':[121.416283,36.824506],
  124. '北司马庄':[121.407681,36.901774],
  125. '宋河村':[121.396209,36.830315],
  126. '玉皇山后村':[121.374950,36.855650],
  127. '小庵村':[121.448942,36.911566],
  128. '寨中村':[121.449558,36.884618],
  129. '于家庄村':[121.471225,36.939311],
  130. '胡八庄村':[121.568170,36.975267],
  131. '西圈村':[121.479388,36.916464],
  132. '西周格庄':[121.510969,36.970669],
  133. '石头圈村':[121.568044,36.963046],
  134. '战家夼村':[121.507283,36.989821],
  135. '东秦家庄村':[121.581713,36.923468],
  136. '南夼':[121.627059,36.743659],
  137. '杜家岛村':[121.568930,36.742764],
  138. '海阳所村':[121.617903,36.810726],
  139. '挂子场村':[121.621164,36.742278],
  140. '小石口村':[121.638667,36.739209],
  141. '贾家庄':[121.620673,36.818218],
  142. '赵家庄':[121.596279,36.817683],
  143. '宫家村':[121.711722,36.852648],
  144. '大陶家村':[121.719183,36.849222],
  145. '白沙滩村':[121.653828,36.851331],
  146. '徐家塂村':[121.604998,36.866776],
  147. '常家庄':[121.673780,36.843373],
  148. '水井村':[121.602086,36.915575],
  149. '河南村':[121.584121,36.897239],
  150. '东林家村':[121.623557,36.911229],
  151. '下石灰刘家村':[121.663305,36.988531],
  152. '吴家沟村':[121.593867,36.942382],
  153. '岭上村':[121.831768,36.942676],
  154. '湾头村':[121.745008,36.994478],
  155. '西浪暖村':[121.851989,36.937874],
  156. '朱家屯':[121.792185,36.951775],
  157. '宫家疃':[121.738942,36.982992],
  158. '陈家屯':[121.828619,36.950847],
  159. '上口':[121.719243,37.089079],
  160. '吕格庄':[121.655496,37.024654],
  161. '北高格庄村':[121.693676,37.125353],
  162. '中寨村':[121.654265,37.073047],
  163. '徐家村村':[121.705554,37.109360],
  164. '吴格庄':[121.703655,37.094140],
  165. '西吉子村':[121.699587,37.074950],
  166. '下初村':[121.611775,37.030651],
  167. '东马台石村':[121.589778,37.091578],
  168. '垒中前村':[121.612687,37.078456],
  169. '段家村':[121.623607,37.015714],
  170. '西庄':[121.616513,37.117998],
  171. '黄格庄':[121.580526,37.026722],
  172. '孙家疃村':[121.495313,37.065864],
  173. '于家疃':[121.500496,37.066822],
  174. '石字岘村':[121.478875,37.100782],
  175. '午极村':[121.490765,37.067272],
  176. '杨家庄':[121.515239,37.076619],
  177. '北庄':[121.478521,37.084915],
  178. '塔庄':[121.454441,37.018286],
  179. '北勇家村':[121.408873,36.971813],
  180. '下宋格庄':[121.444572,37.027198],
  181. '南北山村':[121.465136,36.981366],
  182. '西纪村':[121.402092,37.016856],
  183. '南勇家村':[121.410477,36.958543],
  184. '南西屋村':[121.434169,36.967630],
  185. '马石店':[121.222616,37.030161],
  186. '大崮头村':[121.376992,37.091105],
  187. '西涝口村':[121.211353,37.063630],
  188. '哨里村':[121.338730,37.077767],
  189. '河北村':[121.333901,37.069967],
  190. '北寨村':[121.297241,37.068296],
  191. '北地口村':[121.343912,37.071978],
  192. '神童庙村':[121.351405,36.938536],
  193. '姚家埠':[121.370157,36.957732],
  194. '许家村':[121.384028,37.008922],
  195. '冷格庄':[121.345035,37.021080],
  196. '孙家夼':[121.352509,36.954441],
  197. '下石硼村':[121.243087,36.987297],
  198. '流水头村':[121.328980,37.009478],
  199. '南唐家村':[121.558036,36.859310],
  200. '兰家村':[121.576354,36.868730],
  201. '兰家庄':[121.540098,36.874506],
  202. '康家村':[121.564747,36.875638],
  203. '后尹家村':[121.572749,36.896017],
  204. '择村':[121.558859,36.872582],
  205. '前尹家村':[121.569229,36.891347],
  206. '洋村':[121.786401,36.910271]
  207. }
  208. var convertData = function (data) {
  209. // console.log(data)
  210. var res = [];
  211. for (var i = 0; i < data.length; i++) {
  212. var geoCoord = geoCoordMap[data[i].name];
  213. console.log(geoCoord)
  214. console.log(geoCoord.concat(data[i].value))
  215. if (geoCoord) {
  216. res.push({
  217. name: data[i].name,
  218. value: geoCoord.concat(data[i].value)
  219. });
  220. }
  221. }
  222. return res;
  223. };
  224. var domColor = function(dataIndex){
  225. console.log('123')
  226. const newAry = [];
  227. for (let k = 0; k < 100; k++){
  228. const r = Math.floor(Math.random() * 256);
  229. const g = Math.floor(Math.random() * 256);
  230. const b = Math.floor(Math.random() * 256);
  231. newAry.push(`rgb(${r},${g},${b})`)
  232. }
  233. return newAry[dataIndex];
  234. };
  235. var textColor = function(name){
  236. console.log('name123',name,'name')
  237. // console.log(name.splic(0,-1),'name.splic(0,-1)')
  238. // if(name.splic(0,-1)){
  239. // }
  240. }
  241. option = {
  242. // backgroundColor: '#404a59',
  243. title: {
  244. text: '',
  245. sublink: '',
  246. left: 'center',
  247. textStyle: {
  248. color: '#fff'
  249. }
  250. },
  251. tooltip : {
  252. trigger: 'item1',
  253. formatter:'{b}{c}'
  254. },
  255. geo: {
  256. map: 'rushan',
  257. label: {
  258. emphasis: {
  259. show: false
  260. }
  261. },
  262. roam: false,
  263. zoom:1.3,
  264. itemStyle: {
  265. normal: {
  266. areaColor: 'rgba(2,37,101,.5)',
  267. borderColor: 'rgba(112,187,252,.5)'
  268. },
  269. emphasis: {
  270. areaColor: 'rgba(2,37,101,.8)'
  271. }
  272. }
  273. },
  274. series : [
  275. {
  276. name: '',
  277. type: 'scatter',
  278. coordinateSystem: 'geo',
  279. data: convertData(data),
  280. symbolSize: function (val) {
  281. return val[2] / 15;
  282. },
  283. label: {
  284. normal: {
  285. formatter: '{b}',
  286. position: 'right',
  287. show: false
  288. },
  289. emphasis: {
  290. show: true
  291. }
  292. },
  293. itemStyle: {
  294. normal: {
  295. color: '#ffeb7b'
  296. // color: (e) => {
  297. // return domColor(e.dataIndex)
  298. // }
  299. }
  300. }
  301. }
  302. ]
  303. };
  304. myChart.setOption(option);
  305. window.addEventListener("resize",function(){
  306. myChart.resize();
  307. });
  308. }
  309. })