echarts.js 43 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319
  1. $(function () {
  2. echarts_1();
  3. echarts_2();
  4. map();
  5. echarts_3();
  6. echarts_4();
  7. echarts_5();
  8. echarts_6();
  9. function echarts_1() {
  10. // 基于准备好的dom,初始化echarts实例
  11. var myChart = echarts.init(document.getElementById('echarts_1'));
  12. var data = [
  13. {value: 42,name: '行业一'},
  14. {value: 23,name: '行业二'},
  15. {value: 70,name: '行业三'},
  16. ];
  17. option = {
  18. backgroundColor: 'rgba(0,0,0,0)',
  19. tooltip: {
  20. trigger: 'item',
  21. formatter: "{b}: <br/>{c} ({d}%)"
  22. },
  23. color: [ '#20b9cf', '#2089cf', '#205bcf'],
  24. legend: { //图例组件,颜色和名字
  25. x: '70%',
  26. y: 'center',
  27. orient: 'vertical',
  28. itemGap: 12, //图例每项之间的间隔
  29. itemWidth: 10,
  30. itemHeight: 10,
  31. icon: 'rect',
  32. data: ['行业一', '行业二', '行业三'],
  33. textStyle: {
  34. color: [],
  35. fontStyle: 'normal',
  36. fontFamily: '微软雅黑',
  37. fontSize: 12,
  38. }
  39. },
  40. series: [{
  41. name: '行业占比',
  42. type: 'pie',
  43. clockwise: false, //饼图的扇区是否是顺时针排布
  44. minAngle: 20, //最小的扇区角度(0 ~ 360)
  45. center: ['35%', '50%'], //饼图的中心(圆心)坐标
  46. radius: [40, 60], //饼图的半径
  47. // avoidLabelOverlap: true, ////是否启用防止标签重叠
  48. itemStyle: { //图形样式
  49. normal: {
  50. borderColor: 'transparent',
  51. borderWidth: 2,
  52. },
  53. },
  54. label: { //标签的位置
  55. normal: {
  56. show: true,
  57. position: 'inside', //标签的位置
  58. formatter: "{d}%",
  59. textStyle: {
  60. color: '#fff',
  61. }
  62. },
  63. emphasis: {
  64. show: true,
  65. textStyle: {
  66. fontWeight: 'bold'
  67. }
  68. }
  69. },
  70. data: data
  71. }, {
  72. name: '',
  73. type: 'pie',
  74. clockwise: false,
  75. silent: true,
  76. minAngle: 20, //最小的扇区角度(0 ~ 360)
  77. center: ['35%', '50%'], //饼图的中心(圆心)坐标
  78. radius: [0, 40], //饼图的半径
  79. itemStyle: { //图形样式
  80. normal: {
  81. borderColor: '#1e2239',
  82. borderWidth: 1.5,
  83. opacity: 0.21,
  84. }
  85. },
  86. label: { //标签的位置
  87. normal: {
  88. show: false,
  89. }
  90. },
  91. data: data
  92. }]
  93. };
  94. // 使用刚指定的配置项和数据显示图表。
  95. myChart.setOption(option);
  96. window.addEventListener("resize",function(){
  97. myChart.resize();
  98. });
  99. }
  100. function echarts_2() {
  101. // 基于准备好的dom,初始化echarts实例
  102. var myChart = echarts.init(document.getElementById('echarts_2'));
  103. option = {
  104. backgroundColor: 'rgba(0,0,0,0)',
  105. tooltip: {
  106. trigger: 'item',
  107. formatter: "{b} <br/>{c}辆"
  108. },
  109. legend: {
  110. x: 'center',
  111. y: '2%',
  112. data: ['车型一', '车型二', '车型三', '车型四'],
  113. icon: 'circle',
  114. textStyle: {
  115. color: '#fff',
  116. }
  117. },
  118. calculable: true,
  119. series: [{
  120. name: '车型',
  121. type: 'pie',
  122. //起始角度,支持范围[0, 360]
  123. startAngle: 0,
  124. //饼图的半径,数组的第一项是内半径,第二项是外半径
  125. radius: [51, 80],
  126. //支持设置成百分比,设置成百分比时第一项是相对于容器宽度,第二项是相对于容器高度
  127. center: ['50%', '20%'],
  128. //是否展示成南丁格尔图,通过半径区分数据大小。可选择两种模式:
  129. // 'radius' 面积展现数据的百分比,半径展现数据的大小。
  130. // 'area' 所有扇区面积相同,仅通过半径展现数据大小
  131. roseType: 'area',
  132. //是否启用防止标签重叠策略,默认开启,圆环图这个例子中需要强制所有标签放在中心位置,可以将该值设为 false。
  133. avoidLabelOverlap: false,
  134. label: {
  135. normal: {
  136. show: true,
  137. formatter: '{c}辆'
  138. },
  139. emphasis: {
  140. show: true
  141. }
  142. },
  143. labelLine: {
  144. normal: {
  145. show: true,
  146. length2: 1,
  147. },
  148. emphasis: {
  149. show: true
  150. }
  151. },
  152. data: [{
  153. value: 600,
  154. name: '车型一',
  155. itemStyle: {
  156. normal: {
  157. color: '#33b565'
  158. }
  159. }
  160. },
  161. {
  162. value: 1100,
  163. name: '车型二',
  164. itemStyle: {
  165. normal: {
  166. color: '#20cc98'
  167. }
  168. }
  169. },
  170. {
  171. value: 1200,
  172. name: '车型三',
  173. itemStyle: {
  174. normal: {
  175. color: '#2089cf'
  176. }
  177. }
  178. },
  179. {
  180. value: 1300,
  181. name: '车型四',
  182. itemStyle: {
  183. normal: {
  184. color: '#205bcf'
  185. }
  186. }
  187. },
  188. {
  189. value: 0,
  190. name: "",
  191. label: {
  192. show: false
  193. },
  194. labelLine: {
  195. show: false
  196. }
  197. },
  198. {
  199. value: 0,
  200. name: "",
  201. label: {
  202. show: false
  203. },
  204. labelLine: {
  205. show: false
  206. }
  207. },
  208. {
  209. value: 0,
  210. name: "",
  211. label: {
  212. show: false
  213. },
  214. labelLine: {
  215. show: false
  216. }
  217. },
  218. {
  219. value: 0,
  220. name: "",
  221. label: {
  222. show: false
  223. },
  224. labelLine: {
  225. show: false
  226. }
  227. },
  228. {
  229. value: 0,
  230. name: "",
  231. label: {
  232. show: false
  233. },
  234. labelLine: {
  235. show: false
  236. }
  237. }
  238. ]
  239. }]
  240. };
  241. // 使用刚指定的配置项和数据显示图表。
  242. myChart.setOption(option);
  243. window.addEventListener("resize",function(){
  244. myChart.resize();
  245. });
  246. }
  247. function map() {
  248. // 基于准备好的dom,初始化echarts实例
  249. var myChart = echarts.init(document.getElementById('map'));
  250. var data = [
  251. {name: '海门', value: 9},
  252. {name: '鄂尔多斯', value: 12},
  253. {name: '招远', value: 12},
  254. {name: '舟山', value: 12},
  255. {name: '齐齐哈尔', value: 14},
  256. {name: '盐城', value: 15},
  257. {name: '赤峰', value: 16},
  258. {name: '青岛', value: 18},
  259. {name: '乳山', value: 18},
  260. {name: '金昌', value: 19},
  261. {name: '泉州', value: 21},
  262. {name: '莱西', value: 21},
  263. {name: '日照', value: 21},
  264. {name: '胶南', value: 22},
  265. {name: '南通', value: 23},
  266. {name: '拉萨', value: 24},
  267. {name: '云浮', value: 24},
  268. {name: '梅州', value: 25},
  269. {name: '文登', value: 25},
  270. {name: '上海', value: 25},
  271. {name: '攀枝花', value: 25},
  272. {name: '威海', value: 25},
  273. {name: '承德', value: 25},
  274. {name: '厦门', value: 26},
  275. {name: '汕尾', value: 26},
  276. {name: '潮州', value: 26},
  277. {name: '丹东', value: 27},
  278. {name: '太仓', value: 27},
  279. {name: '曲靖', value: 27},
  280. {name: '烟台', value: 28},
  281. {name: '福州', value: 29},
  282. {name: '瓦房店', value: 30},
  283. {name: '即墨', value: 30},
  284. {name: '抚顺', value: 31},
  285. {name: '玉溪', value: 31},
  286. {name: '张家口', value: 31},
  287. {name: '阳泉', value: 31},
  288. {name: '莱州', value: 32},
  289. {name: '湖州', value: 32},
  290. {name: '汕头', value: 32},
  291. {name: '昆山', value: 33},
  292. {name: '宁波', value: 33},
  293. {name: '湛江', value: 33},
  294. {name: '揭阳', value: 34},
  295. {name: '荣成', value: 34},
  296. {name: '连云港', value: 35},
  297. {name: '葫芦岛', value: 35},
  298. {name: '常熟', value: 36},
  299. {name: '东莞', value: 36},
  300. {name: '河源', value: 36},
  301. {name: '淮安', value: 36},
  302. {name: '泰州', value: 36},
  303. {name: '南宁', value: 37},
  304. {name: '营口', value: 37},
  305. {name: '惠州', value: 37},
  306. {name: '江阴', value: 37},
  307. {name: '蓬莱', value: 37},
  308. {name: '韶关', value: 38},
  309. {name: '嘉峪关', value: 38},
  310. {name: '广州', value: 38},
  311. {name: '延安', value: 38},
  312. {name: '太原', value: 39},
  313. {name: '清远', value: 39},
  314. {name: '中山', value: 39},
  315. {name: '昆明', value: 39},
  316. {name: '寿光', value: 40},
  317. {name: '盘锦', value: 40},
  318. {name: '长治', value: 41},
  319. {name: '深圳', value: 41},
  320. {name: '珠海', value: 42},
  321. {name: '宿迁', value: 43},
  322. {name: '咸阳', value: 43},
  323. {name: '铜川', value: 44},
  324. {name: '平度', value: 44},
  325. {name: '佛山', value: 44},
  326. {name: '海口', value: 44},
  327. {name: '江门', value: 45},
  328. {name: '章丘', value: 45},
  329. {name: '肇庆', value: 46},
  330. {name: '大连', value: 47},
  331. {name: '临汾', value: 47},
  332. {name: '吴江', value: 47},
  333. {name: '石嘴山', value: 49},
  334. {name: '沈阳', value: 50},
  335. {name: '苏州', value: 50},
  336. {name: '茂名', value: 50},
  337. {name: '嘉兴', value: 51},
  338. {name: '长春', value: 51},
  339. {name: '胶州', value: 52},
  340. {name: '银川', value: 52},
  341. {name: '张家港', value: 52},
  342. {name: '三门峡', value: 53},
  343. {name: '锦州', value: 54},
  344. {name: '南昌', value: 54},
  345. {name: '柳州', value: 54},
  346. {name: '三亚', value: 54},
  347. {name: '自贡', value: 56},
  348. {name: '吉林', value: 56},
  349. {name: '阳江', value: 57},
  350. {name: '泸州', value: 57},
  351. {name: '西宁', value: 57},
  352. {name: '宜宾', value: 58},
  353. {name: '呼和浩特', value: 58},
  354. {name: '成都', value: 58},
  355. {name: '大同', value: 58},
  356. {name: '镇江', value: 59},
  357. {name: '桂林', value: 59},
  358. {name: '张家界', value: 59},
  359. {name: '宜兴', value: 59},
  360. {name: '北海', value: 60},
  361. {name: '西安', value: 61},
  362. {name: '金坛', value: 62},
  363. {name: '东营', value: 62},
  364. {name: '牡丹江', value: 63},
  365. {name: '遵义', value: 63},
  366. {name: '绍兴', value: 63},
  367. {name: '扬州', value: 64},
  368. {name: '常州', value: 64},
  369. {name: '潍坊', value: 65},
  370. {name: '重庆', value: 66},
  371. {name: '台州', value: 67},
  372. {name: '南京', value: 67},
  373. {name: '滨州', value: 70},
  374. {name: '贵阳', value: 71},
  375. {name: '无锡', value: 71},
  376. {name: '本溪', value: 71},
  377. {name: '克拉玛依', value: 72},
  378. {name: '渭南', value: 72},
  379. {name: '马鞍山', value: 72},
  380. {name: '宝鸡', value: 72},
  381. {name: '焦作', value: 75},
  382. {name: '句容', value: 75},
  383. {name: '北京', value: 79},
  384. {name: '徐州', value: 79},
  385. {name: '衡水', value: 80},
  386. {name: '包头', value: 80},
  387. {name: '绵阳', value: 80},
  388. {name: '乌鲁木齐', value: 84},
  389. {name: '枣庄', value: 84},
  390. {name: '杭州', value: 84},
  391. {name: '淄博', value: 85},
  392. {name: '鞍山', value: 86},
  393. {name: '溧阳', value: 86},
  394. {name: '库尔勒', value: 86},
  395. {name: '安阳', value: 90},
  396. {name: '开封', value: 90},
  397. {name: '济南', value: 92},
  398. {name: '德阳', value: 93},
  399. {name: '温州', value: 95},
  400. {name: '九江', value: 96},
  401. {name: '邯郸', value: 98},
  402. {name: '临安', value: 99},
  403. {name: '兰州', value: 99},
  404. {name: '沧州', value: 100},
  405. {name: '临沂', value: 103},
  406. {name: '南充', value: 104},
  407. {name: '天津', value: 105},
  408. {name: '富阳', value: 106},
  409. {name: '泰安', value: 112},
  410. {name: '诸暨', value: 112},
  411. {name: '郑州', value: 113},
  412. {name: '哈尔滨', value: 114},
  413. {name: '聊城', value: 116},
  414. {name: '芜湖', value: 117},
  415. {name: '唐山', value: 119},
  416. {name: '平顶山', value: 119},
  417. {name: '邢台', value: 119},
  418. {name: '德州', value: 120},
  419. {name: '济宁', value: 120},
  420. {name: '荆州', value: 127},
  421. {name: '宜昌', value: 130},
  422. {name: '义乌', value: 132},
  423. {name: '丽水', value: 133},
  424. {name: '洛阳', value: 134},
  425. {name: '秦皇岛', value: 136},
  426. {name: '株洲', value: 143},
  427. {name: '石家庄', value: 147},
  428. {name: '莱芜', value: 148},
  429. {name: '常德', value: 152},
  430. {name: '保定', value: 153},
  431. {name: '湘潭', value: 154},
  432. {name: '金华', value: 157},
  433. {name: '岳阳', value: 169},
  434. {name: '长沙', value: 175},
  435. {name: '衢州', value: 177},
  436. {name: '廊坊', value: 193},
  437. {name: '菏泽', value: 194},
  438. {name: '合肥', value: 229},
  439. {name: '武汉', value: 273},
  440. {name: '大庆', value: 279}
  441. ];
  442. var geoCoordMap = {
  443. '海门':[121.15,31.89],
  444. '鄂尔多斯':[109.781327,39.608266],
  445. '招远':[120.38,37.35],
  446. '舟山':[122.207216,29.985295],
  447. '齐齐哈尔':[123.97,47.33],
  448. '盐城':[120.13,33.38],
  449. '赤峰':[118.87,42.28],
  450. '青岛':[120.33,36.07],
  451. '乳山':[121.52,36.89],
  452. '金昌':[102.188043,38.520089],
  453. '泉州':[118.58,24.93],
  454. '莱西':[120.53,36.86],
  455. '日照':[119.46,35.42],
  456. '胶南':[119.97,35.88],
  457. '南通':[121.05,32.08],
  458. '拉萨':[91.11,29.97],
  459. '云浮':[112.02,22.93],
  460. '梅州':[116.1,24.55],
  461. '文登':[122.05,37.2],
  462. '上海':[121.48,31.22],
  463. '攀枝花':[101.718637,26.582347],
  464. '威海':[122.1,37.5],
  465. '承德':[117.93,40.97],
  466. '厦门':[118.1,24.46],
  467. '汕尾':[115.375279,22.786211],
  468. '潮州':[116.63,23.68],
  469. '丹东':[124.37,40.13],
  470. '太仓':[121.1,31.45],
  471. '曲靖':[103.79,25.51],
  472. '烟台':[121.39,37.52],
  473. '福州':[119.3,26.08],
  474. '瓦房店':[121.979603,39.627114],
  475. '即墨':[120.45,36.38],
  476. '抚顺':[123.97,41.97],
  477. '玉溪':[102.52,24.35],
  478. '张家口':[114.87,40.82],
  479. '阳泉':[113.57,37.85],
  480. '莱州':[119.942327,37.177017],
  481. '湖州':[120.1,30.86],
  482. '汕头':[116.69,23.39],
  483. '昆山':[120.95,31.39],
  484. '宁波':[121.56,29.86],
  485. '湛江':[110.359377,21.270708],
  486. '揭阳':[116.35,23.55],
  487. '荣成':[122.41,37.16],
  488. '连云港':[119.16,34.59],
  489. '葫芦岛':[120.836932,40.711052],
  490. '常熟':[120.74,31.64],
  491. '东莞':[113.75,23.04],
  492. '河源':[114.68,23.73],
  493. '淮安':[119.15,33.5],
  494. '泰州':[119.9,32.49],
  495. '南宁':[108.33,22.84],
  496. '营口':[122.18,40.65],
  497. '惠州':[114.4,23.09],
  498. '江阴':[120.26,31.91],
  499. '蓬莱':[120.75,37.8],
  500. '韶关':[113.62,24.84],
  501. '嘉峪关':[98.289152,39.77313],
  502. '广州':[113.23,23.16],
  503. '延安':[109.47,36.6],
  504. '太原':[112.53,37.87],
  505. '清远':[113.01,23.7],
  506. '中山':[113.38,22.52],
  507. '昆明':[102.73,25.04],
  508. '寿光':[118.73,36.86],
  509. '盘锦':[122.070714,41.119997],
  510. '长治':[113.08,36.18],
  511. '深圳':[114.07,22.62],
  512. '珠海':[113.52,22.3],
  513. '宿迁':[118.3,33.96],
  514. '咸阳':[108.72,34.36],
  515. '铜川':[109.11,35.09],
  516. '平度':[119.97,36.77],
  517. '佛山':[113.11,23.05],
  518. '海口':[110.35,20.02],
  519. '江门':[113.06,22.61],
  520. '章丘':[117.53,36.72],
  521. '肇庆':[112.44,23.05],
  522. '大连':[121.62,38.92],
  523. '临汾':[111.5,36.08],
  524. '吴江':[120.63,31.16],
  525. '石嘴山':[106.39,39.04],
  526. '沈阳':[123.38,41.8],
  527. '苏州':[120.62,31.32],
  528. '茂名':[110.88,21.68],
  529. '嘉兴':[120.76,30.77],
  530. '长春':[125.35,43.88],
  531. '胶州':[120.03336,36.264622],
  532. '银川':[106.27,38.47],
  533. '张家港':[120.555821,31.875428],
  534. '三门峡':[111.19,34.76],
  535. '锦州':[121.15,41.13],
  536. '南昌':[115.89,28.68],
  537. '柳州':[109.4,24.33],
  538. '三亚':[109.511909,18.252847],
  539. '自贡':[104.778442,29.33903],
  540. '吉林':[126.57,43.87],
  541. '阳江':[111.95,21.85],
  542. '泸州':[105.39,28.91],
  543. '西宁':[101.74,36.56],
  544. '宜宾':[104.56,29.77],
  545. '呼和浩特':[111.65,40.82],
  546. '成都':[104.06,30.67],
  547. '大同':[113.3,40.12],
  548. '镇江':[119.44,32.2],
  549. '桂林':[110.28,25.29],
  550. '张家界':[110.479191,29.117096],
  551. '宜兴':[119.82,31.36],
  552. '北海':[109.12,21.49],
  553. '西安':[108.95,34.27],
  554. '金坛':[119.56,31.74],
  555. '东营':[118.49,37.46],
  556. '牡丹江':[129.58,44.6],
  557. '遵义':[106.9,27.7],
  558. '绍兴':[120.58,30.01],
  559. '扬州':[119.42,32.39],
  560. '常州':[119.95,31.79],
  561. '潍坊':[119.1,36.62],
  562. '重庆':[106.54,29.59],
  563. '台州':[121.420757,28.656386],
  564. '南京':[118.78,32.04],
  565. '滨州':[118.03,37.36],
  566. '贵阳':[106.71,26.57],
  567. '无锡':[120.29,31.59],
  568. '本溪':[123.73,41.3],
  569. '克拉玛依':[84.77,45.59],
  570. '渭南':[109.5,34.52],
  571. '马鞍山':[118.48,31.56],
  572. '宝鸡':[107.15,34.38],
  573. '焦作':[113.21,35.24],
  574. '句容':[119.16,31.95],
  575. '北京':[116.46,39.92],
  576. '徐州':[117.2,34.26],
  577. '衡水':[115.72,37.72],
  578. '包头':[110,40.58],
  579. '绵阳':[104.73,31.48],
  580. '乌鲁木齐':[87.68,43.77],
  581. '枣庄':[117.57,34.86],
  582. '杭州':[120.19,30.26],
  583. '淄博':[118.05,36.78],
  584. '鞍山':[122.85,41.12],
  585. '溧阳':[119.48,31.43],
  586. '库尔勒':[86.06,41.68],
  587. '安阳':[114.35,36.1],
  588. '开封':[114.35,34.79],
  589. '济南':[117,36.65],
  590. '德阳':[104.37,31.13],
  591. '温州':[120.65,28.01],
  592. '九江':[115.97,29.71],
  593. '邯郸':[114.47,36.6],
  594. '临安':[119.72,30.23],
  595. '兰州':[103.73,36.03],
  596. '沧州':[116.83,38.33],
  597. '临沂':[118.35,35.05],
  598. '南充':[106.110698,30.837793],
  599. '天津':[117.2,39.13],
  600. '富阳':[119.95,30.07],
  601. '泰安':[117.13,36.18],
  602. '诸暨':[120.23,29.71],
  603. '郑州':[113.65,34.76],
  604. '哈尔滨':[126.63,45.75],
  605. '聊城':[115.97,36.45],
  606. '芜湖':[118.38,31.33],
  607. '唐山':[118.02,39.63],
  608. '平顶山':[113.29,33.75],
  609. '邢台':[114.48,37.05],
  610. '德州':[116.29,37.45],
  611. '济宁':[116.59,35.38],
  612. '荆州':[112.239741,30.335165],
  613. '宜昌':[111.3,30.7],
  614. '义乌':[120.06,29.32],
  615. '丽水':[119.92,28.45],
  616. '洛阳':[112.44,34.7],
  617. '秦皇岛':[119.57,39.95],
  618. '株洲':[113.16,27.83],
  619. '石家庄':[114.48,38.03],
  620. '莱芜':[117.67,36.19],
  621. '常德':[111.69,29.05],
  622. '保定':[115.48,38.85],
  623. '湘潭':[112.91,27.87],
  624. '金华':[119.64,29.12],
  625. '岳阳':[113.09,29.37],
  626. '长沙':[113,28.21],
  627. '衢州':[118.88,28.97],
  628. '廊坊':[116.7,39.53],
  629. '菏泽':[115.480656,35.23375],
  630. '合肥':[117.27,31.86],
  631. '武汉':[114.31,30.52],
  632. '大庆':[125.03,46.58]
  633. };
  634. var convertData = function (data) {
  635. var res = [];
  636. for (var i = 0; i < data.length; i++) {
  637. var geoCoord = geoCoordMap[data[i].name];
  638. if (geoCoord) {
  639. res.push({
  640. name: data[i].name,
  641. value: geoCoord.concat(data[i].value)
  642. });
  643. }
  644. }
  645. return res;
  646. };
  647. option = {
  648. // backgroundColor: '#404a59',
  649. /*** title: {
  650. text: '实时行驶车辆',
  651. subtext: 'data from PM25.in',
  652. sublink: 'http://www.pm25.in',
  653. left: 'center',
  654. textStyle: {
  655. color: '#fff'
  656. }
  657. },**/
  658. tooltip : {
  659. trigger: 'item'
  660. },
  661. geo: {
  662. map: 'china',
  663. label: {
  664. emphasis: {
  665. show: false
  666. }
  667. },
  668. roam: true,
  669. itemStyle: {
  670. normal: {
  671. areaColor: '#3eabff',
  672. borderColor: '#fff'
  673. },
  674. emphasis: {
  675. areaColor: '#006be4'
  676. }
  677. }
  678. },
  679. series : [
  680. {
  681. name: '实时行驶车辆',
  682. type: 'scatter',
  683. coordinateSystem: 'geo',
  684. data: convertData(data),
  685. symbolSize: function (val) {
  686. return val[2] / 10;
  687. },
  688. label: {
  689. normal: {
  690. formatter: '{b}',
  691. position: 'right',
  692. show: false
  693. },
  694. emphasis: {
  695. show: true
  696. }
  697. },
  698. itemStyle: {
  699. normal: {
  700. color: '#fff'
  701. }
  702. }
  703. },
  704. {
  705. name: 'Top 5',
  706. type: 'effectScatter',
  707. coordinateSystem: 'geo',
  708. data: convertData(data.sort(function (a, b) {
  709. return b.value - a.value;
  710. }).slice(0, 6)),
  711. symbolSize: function (val) {
  712. return val[2] / 20;
  713. },
  714. showEffectOn: 'render',
  715. rippleEffect: {
  716. brushType: 'stroke'
  717. },
  718. hoverAnimation: true,
  719. label: {
  720. normal: {
  721. formatter: '{b}',
  722. position: 'right',
  723. show: true
  724. }
  725. },
  726. itemStyle: {
  727. normal: {
  728. color: '#0041d2',
  729. shadowBlur: 10,
  730. shadowColor: 'rgba(0,0,0,.3)'
  731. }
  732. },
  733. zlevel: 1
  734. }
  735. ]
  736. };
  737. myChart.setOption(option);
  738. window.addEventListener("resize",function(){
  739. myChart.resize();
  740. });
  741. }
  742. function echarts_3() {
  743. // 基于准备好的dom,初始化echarts实例
  744. var myChart = echarts.init(document.getElementById('echarts_3'));
  745. option = {
  746. tooltip : {
  747. trigger: 'axis'
  748. },
  749. grid: {
  750. left: '3%',
  751. right: '5%',
  752. top:'8%',
  753. bottom: '5%',
  754. containLabel: true
  755. },
  756. color:['#a4d8cc','#25f3e6'],
  757. toolbox: {
  758. show : false,
  759. feature : {
  760. mark : {show: true},
  761. dataView : {show: true, readOnly: false},
  762. magicType : {show: true, type: ['line', 'bar', 'stack', 'tiled']},
  763. restore : {show: true},
  764. saveAsImage : {show: true}
  765. }
  766. },
  767. calculable : true,
  768. xAxis : [
  769. {
  770. type : 'category',
  771. axisTick:{show:false},
  772. boundaryGap : false,
  773. axisLabel: {
  774. textStyle:{
  775. color: 'rgba(255,255,255,.6)',
  776. fontSize:'12'
  777. },
  778. lineStyle:{
  779. color:'rgba(255,255,255,.1)',
  780. },
  781. interval: {default: 0},
  782. // rotate:50,
  783. formatter : function(params){
  784. var newParamsName = "";// 最终拼接成的字符串
  785. var paramsNameNumber = params.length;// 实际标签的个数
  786. var provideNumber = 4;// 每行能显示的字的个数
  787. var rowNumber = Math.ceil(paramsNameNumber / provideNumber);// 换行的话,需要显示几行,向上取整
  788. /**
  789. * 判断标签的个数是否大于规定的个数, 如果大于,则进行换行处理 如果不大于,即等于或小于,就返回原标签
  790. */
  791. // 条件等同于rowNumber>1
  792. if (paramsNameNumber > provideNumber) {
  793. /** 循环每一行,p表示行 */
  794. var tempStr = "";
  795. tempStr=params.substring(0,4);
  796. newParamsName = tempStr+"...";// 最终拼成的字符串
  797. } else {
  798. // 将旧标签的值赋给新标签
  799. newParamsName = params;
  800. }
  801. //将最终的字符串返回
  802. return newParamsName
  803. }
  804. },
  805. data: ['星期一','星期二 ','星期三 ','星期四','星期五','星期六','星期天']
  806. }
  807. ],
  808. yAxis : {
  809. min:300,
  810. type : 'value',
  811. axisLabel: {
  812. textStyle: {
  813. color: '#ccc',
  814. fontSize:'12',
  815. }
  816. },
  817. axisLine: {
  818. lineStyle:{
  819. color:'rgba(160,160,160,0.2)',
  820. }
  821. },
  822. splitLine: {
  823. lineStyle:{
  824. color:'rgba(160,160,160,0.2)',
  825. }
  826. },
  827. },
  828. series : [
  829. {
  830. // name:'简易程序案件数',
  831. lineStyle:{
  832. color:'#72b0f9',
  833. },
  834. type:'line',
  835. areaStyle: {
  836. normal: {type: 'default',
  837. color: new echarts.graphic.LinearGradient(0, 0, 0, 0.8, [{
  838. offset: 0,
  839. color: 'rgba(129,197,255,.6)'
  840. }, {
  841. offset: 1,
  842. color: 'rgba(129,197,255,.0)'
  843. }], false)
  844. }
  845. },
  846. smooth:true,
  847. itemStyle: {
  848. normal: {areaStyle: {type: 'default'}}
  849. },
  850. data:[580, 490, 700,450, 550, 660, 540]
  851. }
  852. ]
  853. };
  854. // 使用刚指定的配置项和数据显示图表。
  855. myChart.setOption(option);
  856. window.addEventListener("resize",function(){
  857. myChart.resize();
  858. });
  859. }
  860. function echarts_4() {
  861. // 基于准备好的dom,初始化echarts实例
  862. var myChart = echarts.init(document.getElementById('echarts_4'));
  863. option = {
  864. tooltip : {
  865. trigger: 'item',
  866. formatter: "{b}: <br/> {c} ({d}%)"
  867. },
  868. toolbox: {
  869. show : false,
  870. feature : {
  871. mark : {show: true},
  872. dataView : {show: true, readOnly: false},
  873. magicType : {
  874. show: true,
  875. type: ['pie', 'funnel']
  876. },
  877. restore : {show: true},
  878. saveAsImage : {show: true}
  879. }
  880. },
  881. calculable : true,
  882. series : [
  883. {
  884. name:'排名',
  885. type:'pie',
  886. color: ['#33b565', '#20cc98', '#20b9cf', '#2089cf', '#205bcf'],
  887. radius : [20, 70],
  888. center : ['50%', '50%'],
  889. roseType : 'area',
  890. data:[
  891. {value:70, name:'NO.4'},
  892. {value:90, name:'NO.3'},
  893. {value:110, name:'NO.2'},
  894. {value:150, name:'NO.1'},
  895. {value:40, name:'NO.5'}
  896. ]
  897. }
  898. ]
  899. };
  900. // 使用刚指定的配置项和数据显示图表。
  901. myChart.setOption(option);
  902. window.addEventListener("resize",function(){
  903. myChart.resize();
  904. });
  905. }
  906. function echarts_5() {
  907. // 基于准备好的dom,初始化echarts实例
  908. var myChart = echarts.init(document.getElementById('echarts_5'));
  909. var xData = function() {
  910. var data = ['NO.1','NO.2','NO.3','NO.4','NO.5'];
  911. return data;
  912. }();
  913. var data = [23, 22, 20, 30, 22]
  914. option = {
  915. // backgroundColor: "#141f56",
  916. tooltip: {
  917. show: "true",
  918. trigger: 'item',
  919. backgroundColor: 'rgba(0,0,0,0.4)', // 背景
  920. padding: [8, 10], //内边距
  921. // extraCssText: 'box-shadow: 0 0 3px rgba(255, 255, 255, 0.4);', //添加阴影
  922. formatter: function(params) {
  923. if (params.seriesName != "") {
  924. return params.name + ' : ' + params.value + ' 辆';
  925. }
  926. },
  927. },
  928. grid: {
  929. borderWidth: 0,
  930. top: 20,
  931. bottom: 35,
  932. left:40,
  933. right:10,
  934. textStyle: {
  935. color: "#fff"
  936. }
  937. },
  938. xAxis: [{
  939. type: 'category',
  940. axisTick: {
  941. show: false
  942. },
  943. axisLine: {
  944. show: true,
  945. lineStyle: {
  946. color:'rgba(255,255,255,0.2)',
  947. }
  948. },
  949. axisLabel: {
  950. inside: false,
  951. textStyle: {
  952. color: '#bac0c0',
  953. fontWeight: 'normal',
  954. fontSize: '12',
  955. },
  956. // formatter:function(val){
  957. // return val.split("").join("\n")
  958. // },
  959. },
  960. data: xData,
  961. }, {
  962. type: 'category',
  963. axisLine: {
  964. show: false
  965. },
  966. axisTick: {
  967. show: false
  968. },
  969. axisLabel: {
  970. show: false
  971. },
  972. splitArea: {
  973. show: false
  974. },
  975. splitLine: {
  976. show: false
  977. },
  978. data: xData,
  979. }],
  980. yAxis: {
  981. min:10,
  982. type: 'value',
  983. axisTick: {
  984. show: false
  985. },
  986. axisLine: {
  987. show: true,
  988. lineStyle: {
  989. color: 'rgba(255,255,255,0.2)',
  990. }
  991. },
  992. splitLine: {
  993. show: true,
  994. lineStyle: {
  995. color: 'rgba(255,255,255,0.1)',
  996. }
  997. },
  998. axisLabel: {
  999. textStyle: {
  1000. color: '#bac0c0',
  1001. fontWeight: 'normal',
  1002. fontSize: '12',
  1003. },
  1004. formatter: '{value}',
  1005. },
  1006. },
  1007. series: [{
  1008. type: 'bar',
  1009. itemStyle: {
  1010. normal: {
  1011. show: true,
  1012. color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
  1013. offset: 0,
  1014. color: '#00c0e9'
  1015. }, {
  1016. offset: 1,
  1017. color: '#3b73cf'
  1018. }]),
  1019. barBorderRadius: 50,
  1020. borderWidth: 0,
  1021. },
  1022. emphasis: {
  1023. shadowBlur: 15,
  1024. shadowColor: 'rgba(105,123, 214, 0.7)'
  1025. }
  1026. },
  1027. zlevel: 2,
  1028. barWidth: '20%',
  1029. data: data,
  1030. },
  1031. {
  1032. name: '',
  1033. type: 'bar',
  1034. xAxisIndex: 1,
  1035. zlevel: 1,
  1036. itemStyle: {
  1037. normal: {
  1038. color: 'transparent',
  1039. borderWidth: 0,
  1040. shadowBlur: {
  1041. shadowColor: 'rgba(255,255,255,0.31)',
  1042. shadowBlur: 10,
  1043. shadowOffsetX: 0,
  1044. shadowOffsetY: 2,
  1045. },
  1046. }
  1047. },
  1048. barWidth: '20%',
  1049. data: [30, 30, 30, 30, 30]
  1050. }
  1051. ]
  1052. }
  1053. // 使用刚指定的配置项和数据显示图表。
  1054. myChart.setOption(option);
  1055. window.addEventListener("resize",function(){
  1056. myChart.resize();
  1057. });
  1058. }
  1059. function echarts_6() {
  1060. // 基于准备好的dom,初始化echarts实例
  1061. var myChart = echarts.init(document.getElementById('echarts_6'));
  1062. var data = {
  1063. "chart": [{
  1064. month: "NO.1",
  1065. value: 10,
  1066. },
  1067. {
  1068. month: "NO.2",
  1069. value: 8.7,
  1070. },
  1071. {
  1072. month: "NO.3",
  1073. value: 6.8,
  1074. },
  1075. {
  1076. month: "NO.4",
  1077. value: 5.9,
  1078. },
  1079. {
  1080. month: "NO.5",
  1081. value: 5.2
  1082. }
  1083. ]
  1084. }
  1085. var xAxisMonth = [],
  1086. barData = [],
  1087. lineData = [];
  1088. for (var i = 0; i < data.chart.length; i++) {
  1089. xAxisMonth.push(data.chart[i].month);
  1090. barData.push({
  1091. "name": xAxisMonth[i],
  1092. "value": data.chart[i].value
  1093. });
  1094. lineData.push({
  1095. "name": xAxisMonth[i],
  1096. "value": data.chart[i].ratio
  1097. });
  1098. }
  1099. option = {
  1100. // backgroundColor: "#020d22",
  1101. title: '',
  1102. grid: {
  1103. top: '10%',
  1104. left: '30',
  1105. bottom: '0',
  1106. right:'10',
  1107. containLabel: true
  1108. },
  1109. tooltip: {
  1110. trigger: 'axis',
  1111. axisPointer: {
  1112. type: 'none'
  1113. },
  1114. formatter: function(params) {
  1115. return params[0]["data"].name + "<br/>" + '报警次数: ' + params[1]["data"].value+'次' ;
  1116. }
  1117. },
  1118. xAxis: [{
  1119. type: 'category',
  1120. show: false,
  1121. data: ['NO.1', 'NO.2', 'NO.3', 'NO.4', 'NO.5'],
  1122. axisLabel: {
  1123. textStyle: {
  1124. color: '#b6b5ab'
  1125. }
  1126. }
  1127. },
  1128. {
  1129. type: 'category',
  1130. position: "bottom",
  1131. data: xAxisMonth,
  1132. boundaryGap: true,
  1133. // offset: 40,
  1134. splitLine: {
  1135. show: false,
  1136. lineStyle: {
  1137. color: 'rgba(255,255,255,0.2)'
  1138. }
  1139. },
  1140. axisTick: {
  1141. show: false
  1142. },
  1143. axisLine: {
  1144. show: true,
  1145. color: "rgba(255,255,255,0.2)"
  1146. },
  1147. axisLabel: {
  1148. textStyle: {
  1149. color: '#b6b5ab'
  1150. }
  1151. }
  1152. }
  1153. ],
  1154. yAxis: [{
  1155. show: true,
  1156. offset: 15,
  1157. splitLine: {
  1158. show: false,
  1159. lineStyle: {
  1160. color: "rgba(255,255,255,0.1)"
  1161. }
  1162. },
  1163. axisTick: {
  1164. show: false
  1165. },
  1166. axisLine: {
  1167. show: true,
  1168. color: "rgba(255,255,255,0.1"
  1169. },
  1170. axisLabel: {
  1171. show: true,
  1172. color: '#b6b5ab'
  1173. }
  1174. }, {
  1175. show: false,
  1176. type: "value",
  1177. // name: "合格率(%)",
  1178. nameTextStyle: {
  1179. color: '#ccc'
  1180. },
  1181. axisLabel: {
  1182. color: '#ccc'
  1183. },
  1184. splitLine: {
  1185. show: false
  1186. },
  1187. axisLine: {
  1188. show: true
  1189. },
  1190. axisTick: {
  1191. show: true
  1192. }
  1193. }],
  1194. color: ['#e54035'],
  1195. series: [{
  1196. name: '训练人次',
  1197. type: 'pictorialBar',
  1198. xAxisIndex: 1,
  1199. barCategoryGap: '-40%',
  1200. // barCategoryGap: '-5%',
  1201. symbol: 'path://d="M150 50 L130 130 L170 130 Z"',
  1202. itemStyle: {
  1203. normal: {
  1204. color: function(params) {
  1205. var colorList = [
  1206. 'rgba(13,177,205,0.8)', 'rgba(29,103,182,0.6)',
  1207. 'rgba(13,177,205,0.8)', 'rgba(29,103,182,0.6)',
  1208. 'rgba(13,177,205,0.8)', 'rgba(29,103,182,0.6)'
  1209. ];
  1210. return colorList[params.dataIndex];
  1211. }
  1212. },
  1213. emphasis: {
  1214. opacity: 1
  1215. }
  1216. },
  1217. data: barData,
  1218. },
  1219. {
  1220. symbol: 'image://data:image/png;base64,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',
  1221. symbolSize: 42,
  1222. type: "line",
  1223. yAxisIndex: 1,
  1224. data: lineData,
  1225. itemStyle: {
  1226. normal: {
  1227. borderWidth: 5,
  1228. color: {
  1229. colorStops: [{
  1230. offset: 0,
  1231. color: '#821eff'
  1232. },
  1233. {
  1234. offset: 1,
  1235. color: '#204fff'
  1236. }
  1237. ],
  1238. }
  1239. }
  1240. }
  1241. }
  1242. ]
  1243. }
  1244. // 使用刚指定的配置项和数据显示图表。
  1245. myChart.setOption(option);
  1246. window.addEventListener("resize",function(){
  1247. myChart.resize();
  1248. });
  1249. }
  1250. })