investHome2.js 65 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058
  1. let app = new Vue({
  2. el: '#app',
  3. data () {
  4. return {
  5. count: 0,
  6. countType: 0,
  7. type: true, // 切换柱状图状态
  8. showTip2: false,
  9. showTip3: false,
  10. timer2: '',
  11. echartTitle: '',
  12. year: '2022',
  13. time: '',
  14. timer: '',
  15. mapName: 'shanxi',
  16. geoCoordMap: {},
  17. config1: {
  18. number: [100],
  19. content: '{nt}个',
  20. },
  21. storageRecordConfig: {
  22. // waitTime: '30000',
  23. hoverPause: false,
  24. header: ['企业集团', '项目名 ', '投资总额'],
  25. // headerBGC: '#05507b33',
  26. // oddRowBGC: '#05507b33',
  27. // evenRowBGC: '#05507b33',
  28. headerBGC: '#05183c',
  29. headerBGC: '#05507b33',
  30. oddRowBGC: '#05183c',
  31. evenRowBGC: '#05183c',
  32. rowNum: 4,
  33. align: ['center'],
  34. data: [
  35. // ['国际能源', '娄烦县120MW智慧光伏发电项目+10%储能', "6.78亿元 "],
  36. // ['国际能源', '平朔矿区150MW农光储氢一体化项目', "7.84亿元"],
  37. // ['汾酒集团', '汾酒2030技改原酒产储能扩建项目(一期)', "91.02亿元 "],
  38. // ['大地控股', '山西大地控股忻州新店矿业有限公司投资建设年产800万吨精品砂石骨料项目', "8.67亿元 "],
  39. // ['潞安化工', '分布式光伏发电项目', "2.01亿元 "],
  40. // ['太重集团', '设立太重(大同)新能源产业投资公司', "0.30亿元 "],
  41. // ['大地控股', '山西大地宏翔环保科技有限公司电厂固废资源化综合利用建设项目', "3.60亿元 "],
  42. // ['大地控股', '山西大地海科环保科技有限公司电厂固废资源化综合利用建设项目', "3.11亿元 "],
  43. // ['汾酒集团', '保健酒园区新增原酒产能项目', "4.98亿元 "],
  44. // ['汾酒集团', '白玉酒厂改扩建项目', "4.96亿元 "],
  45. // ['华阳新材', '5GW高效光伏组件制造项目', "4.82亿元 "],
  46. // ['华新燃气', '吉县—延长输气管道项目(一期工程)', "3.54亿元 "],
  47. // ['太重集团', '建设液压挖掘机配套油缸项目', "2.60亿元 "],
  48. // ['华远陆港', '物产集团参股设立项目公司投资建设山西物产万科(太原)综合物流产业园项目', "6.60亿元 "],
  49. // ['太重集团', '设立昔阳县晶能新能源有限公司', "0.50亿元 "],
  50. // ['山西建投', '设立山西低碳环保产业集团有限公司', "30.00亿元 "],
  51. // ['山西建投', '设立山西省太忻经济一体化发展投资集团有限公司', "30.00亿元 "],
  52. // ['华新燃气', '设立山西华新液化天然气集团有限公司', "3.00亿元 "],
  53. // ['交控集团', '设立山西交控新能源发展有限公司', "3.00亿元 "],
  54. ['国际能源', '娄烦县120MW智慧光伏发电项目+10%储能', "6.78亿元"],
  55. ['国际能源', '平朔矿区150MW农光储氢一体化项目', "7.84亿元"],
  56. ['汾酒集团', '汾酒2030技改原酒产储能扩建项目(一期)', "91.02亿元"],
  57. ['大地控股', '山西大地控股忻州新店矿业有限公司投资建设年产800万吨精品砂石骨料项目', "8.67亿元"],
  58. ['潞安化工', '分布式光伏发电项目', "2.01亿元"],
  59. ['太重集团', '设立太重(大同)新能源产业投资公司', "0.30亿元"],
  60. ['大地控股', '山西大地宏翔环保科技有限公司电厂固废资源化综合利用建设项目', "3.60亿元"],
  61. ['大地控股', '山西大地海科环保科技有限公司电厂固废资源化综合利用建设项目', "3.11亿元"],
  62. ['汾酒集团', '保健酒园区新增原酒产能项目', "4.98亿元"],
  63. ['汾酒集团', '白玉酒厂改扩建项目', "4.96亿元"],
  64. ['华阳新材', '5GW高效光伏组件制造项目', "4.82亿元"],
  65. ['华新燃气', '吉县—延长输气管道项目(一期工程)', "3.54亿元"],
  66. ['太重集团', '建设液压挖掘机配套油缸项目', "2.60亿元"],
  67. ['华远陆港', '物产集团参股设立项目公司投资建设山西物产万科(太原)综合物流产业园项目', "6.60亿元"],
  68. ['太重集团', '设立昔阳县晶能新能源有限公司', "0.50亿元"],
  69. ['山西建投', '设立山西低碳环保产业集团有限公司', "30.00亿元"],
  70. ['山西建投', '设立山西省太忻经济一体化发展投资集团有限公司', "30.00亿元"],
  71. ['华新燃气', '设立山西华新液化天然气集团有限公司', "3.00亿元"],
  72. ['交控集团', '设立山西交控新能源发展有限公司', "3.00亿元"]
  73. ],
  74. },
  75. companyList: [
  76. { name: '山西焦煤' },
  77. { name: '晋能控股' },
  78. { name: '华新燃气' },
  79. { name: '山西建投' },
  80. { name: '潞安化工' },
  81. { name: '华远陆港' },
  82. { name: '航产集团' },
  83. { name: '大地控股' },
  84. { name: '国新能源' },
  85. { name: '汾酒集团' },
  86. { name: '云时代' },
  87. { name: '神农科技' },
  88. { name: '华阳新材' },
  89. { name: '华舰体育' },
  90. { name: '交控集团' },
  91. { name: '文旅集团' },
  92. { name: '水控集团' },
  93. { name: '太重集团' },
  94. ],
  95. }
  96. },
  97. created () {
  98. this.time = formatDate()
  99. this.timer = setInterval(() => {
  100. this.time = formatDate()
  101. }, 1000)
  102. },
  103. beforeDestroy () {
  104. if (this.timer) {
  105. clearInterval(this.timer);
  106. }
  107. this.timer2 && clearInterval(this.timer2);
  108. },
  109. mounted () {
  110. // 左侧图表
  111. setTimeout(() => {
  112. this.initChartL1()
  113. this.initChartL2()
  114. this.initChartL3()
  115. this.initChartL4()
  116. this.initChartL5()
  117. this.initChartL6()
  118. this.initChartL7()
  119. this.initChartR1()
  120. this.initChartR2()
  121. this.initChartR3()
  122. this.initChartR6()
  123. this.changeTopColor()
  124. },)
  125. },
  126. methods: {
  127. changeTopColor () {
  128. this.list = document.getElementsByClassName('row-item')
  129. for (var i = 0; i < this.list.length; i++) {
  130. if (i == 1) {
  131. this.list[i].classList.add('light')
  132. } else {
  133. this.list[i].classList.remove('light')
  134. }
  135. }
  136. this.initChartL3()
  137. },
  138. scrollChange (index) {
  139. if (index == 18) {
  140. this.count = -1
  141. } else {
  142. this.count = index
  143. }
  144. if (this.count > 12 && this.count != 18) {
  145. this.countType = 1
  146. } else {
  147. this.countType = 0
  148. }
  149. this.list = document.getElementsByClassName('row-item')
  150. for (var i = 0; i < this.list.length; i++) {
  151. if (i == 2) {
  152. this.list[i].classList.add('light')
  153. } else {
  154. this.list[i].classList.remove('light')
  155. }
  156. }
  157. this.initChartL3()
  158. },
  159. convertData (data) {
  160. var res = []
  161. for (var i = 0; i < data.length; i++) {
  162. var geoCoord = this.geoCoordMap[data[i].name]
  163. if (geoCoord) {
  164. res.push({
  165. name: data[i].name,
  166. value: geoCoord.concat(data[i].value),
  167. })
  168. }
  169. }
  170. return res
  171. },
  172. initChinaChart () {
  173. var data = [
  174. { name: '吕梁市', value: 150 },
  175. { name: '大同市', value: 190 },
  176. { name: '忻州市', value: 140 },
  177. { name: '朔州市', value: 160 },
  178. { name: '晋中市', value: 100 },
  179. { name: '太原市', value: 300 },
  180. { name: '临汾市', value: 190 },
  181. { name: '长治市', value: 100 },
  182. { name: '晋城市', value: 280 },
  183. { name: '运城市', value: 180 },
  184. { name: '阳泉市', value: 110 },
  185. ]
  186. var moveLine = {
  187. normal: [
  188. {
  189. fromName: '太原市',
  190. toName: '吕梁市',
  191. coords: [
  192. [112.3352, 37.9413],
  193. [111.3574, 37.7325],
  194. ],
  195. },
  196. {
  197. fromName: '太原市',
  198. toName: '忻州市',
  199. coords: [
  200. [112.3352, 37.9413],
  201. [112.4561, 38.8971],
  202. ],
  203. },
  204. {
  205. fromName: '太原市',
  206. toName: '临汾市',
  207. coords: [
  208. [112.3352, 37.9413],
  209. [111.4783, 36.1615],
  210. ],
  211. },
  212. {
  213. fromName: '太原市',
  214. toName: '阳泉市',
  215. coords: [
  216. [112.3352, 37.9413],
  217. [113.4778, 38.0951],
  218. ],
  219. },
  220. {
  221. fromName: '太原市',
  222. toName: '晋中市',
  223. coords: [
  224. [112.3352, 37.9413],
  225. [112.7747, 37.37],
  226. ],
  227. },
  228. {
  229. fromName: '太原市',
  230. toName: '运城市',
  231. coords: [
  232. [112.3352, 37.9413],
  233. [111.1487, 35.2002],
  234. ],
  235. },
  236. {
  237. fromName: '太原市',
  238. toName: '大同市',
  239. coords: [
  240. [112.3352, 37.9413],
  241. [113.7854, 39.8035],
  242. ],
  243. },
  244. {
  245. fromName: '太原市',
  246. toName: '晋城市',
  247. coords: [
  248. [112.3352, 37.9413],
  249. [112.7856, 35.6342],
  250. ],
  251. },
  252. {
  253. fromName: '太原市',
  254. toName: '长治市',
  255. coords: [
  256. [112.3352, 37.9413],
  257. [112.8625, 36.4746],
  258. ],
  259. },
  260. {
  261. fromName: '太原市',
  262. toName: '朔州市',
  263. coords: [
  264. [112.3352, 37.9413],
  265. [113.0713, 39.6991],
  266. ],
  267. },
  268. ],
  269. }
  270. /*获取地图数据*/
  271. let myChart = echarts.init(this.$refs['echarts-map'])
  272. echarts.registerMap('shanxi', {
  273. type: 'FeatureCollection',
  274. features: [
  275. {
  276. type: 'Feature',
  277. id: '1409',
  278. properties: { name: '忻州市', cp: [112.4561, 38.8971], childNum: 14 },
  279. geometry: {
  280. type: 'Polygon',
  281. coordinates: [
  282. '@@Vx@lnbn¦WlnnUšmš°š²VšV‚VVVnUn„ºlz@l„„@Jƒ@kXWVXl@Lƒa@„ƒKUL„ŽlbnKlLnK‚LnKÆXn°šbVV@bUVl°Un@LnaVJUbW@UX²l‚@ČwlVVIšWnkÆa°„„anV‚Kn°™UW¯@™aVUVk@Un@„aV@ValwUanmWU„k@WVUUanaVwnLVl°@nk@mVU@UVK@w„LVKVU@ƒ„K@UUKVUV@@bnL„a‚V„aôšlIXmlKX_°KVV@bVV„@šzV`kblI„V„Ul‚šL@bnV@V„Ċll„„VlIXW@k„a‚U²blKšVnIlJ„albXXlWVn°JnšnL@l@XlJlaX@„X˜W²@l_VmnKšU„blU@mnkVK„¯@U@ƒma@kX¥VƒmakkƒLƒa@aƒ@WIUUVXWWnk@a°a@kkm@kUUmJm@WUUUIk`m@V—kaWWkX™KmƒXk¯ƒ@WKƒLkak@±bƒw@ƒaƒa@akaƒ@ma¯@ƒL—KÇÅkKWbkmġ™±ÅUƒLUK™VVkƒm¯LUVVbƒ„UwUW¯bm„ƒULƒxWJ—@ƒklmkUm@@KnwVkVK@akwƒ@@a¯bƒKkn›VUI™b¯mmbk@UbmKUL@xUUƒ@klmLUŽlVXI‚VVVUVUœU`mLXVWbXnW`Ų°xmŽxU@mĉƒƒwU@mbU@UƒmbkVW¦kJ™@ƒX@`¯Im@UlUVVnb@bWJXnmbƒJUU™UUaƒ@UamIkaƒxƒ@@x@b',
  283. ],
  284. encodeOffsets: [[113614, 39657]],
  285. },
  286. },
  287. {
  288. type: 'Feature',
  289. id: '1411',
  290. properties: { name: '吕梁市', cp: [111.3574, 37.7325], childNum: 13 },
  291. geometry: {
  292. type: 'Polygon',
  293. coordinates: [
  294. '@@@a@w„@„wlbnJVb„@VbšVVV„InaWmXI@a‚aUmVUVkn@°J@_„Wš@lIX¥lUnaV„V@naV@„xĊ„n‚V@‚wn¯wƱX_WmXaWUnKV_V›VUUUUWJkUVnKlk¯™@@kmKUaŁ±KkU@WmI@WUIlUUmVwXƒ‚w@ƒUlUVwœV‚@„Lnb‚W@anU@UšaVkô@l»n@na˜JnUÈLVaƃUUVm„VKVƒ²L@mU_lK@UVWkU‚a@a@U¯aUaƒÑóÑUb™„ƒKk@@aƒk¯mVaUwVƒÑkWUmK@UUKmXUWÝwUa™LUU@aWJUUU@Ua݄U@WL@VKVaVI@WnU@alIVKƒƒ@kIƒmIkJ@™m@ƒ™@@_™K@xƒ@kaW@U„@Vmn@ŽUK@mIƒJUXV¤XXWlkKƒkkK@XmJVakImJU@ó™¯LWKUV@nUVƒLkxmKkLma@kXKmmƒLƒab™LmK@V@mXVÆUxƒX@`nL„aV@@VmLUVnLlLš˜„b@„šŽ°²nx@b‚VUxlb@V¯bUV@zV‚XVĊXVx@lVn@VnnmŽUš@LlJXVƒz¯VWVXbšV@bmn™VUVk„Çþń@XVxmbUlV„Uln„W„@„Xl‚@VLXÒ@bÞJ°¦„L˜ò„@nU‚b@°„X@ŽXbmVU„V„nb@x‚x',
  295. ],
  296. encodeOffsets: [[113614, 39657]],
  297. },
  298. },
  299. {
  300. type: 'Feature',
  301. id: '1410',
  302. properties: { name: '临汾市', cp: [111.4783, 36.1615], childNum: 17 },
  303. geometry: {
  304. type: 'Polygon',
  305. coordinates: [
  306. '@@nW‚@@UnLšK‚a„b„KnnWL@lnblKnLlw„KVU@mVUXL°KôšV@nIlJUbnI@WlL„llLXkWWU£VW„InJ‚@VL@nm@UVƒX@lb„@@wšL@`‚@„šn@V@lw„@n„VmVX„WmwnUlƒœa@_lK„wVlUn°xVKVXXWlUšVVI@K@K„n°KœwlVlU@kna@V_„Wn‚m„UVm@kXml_@m„LlKXw°m@_ôJVUV@X™l@UaV@Va°I„lk»VwUkVmwUmmVn@V¯@KƒU—wmK@U¯wUVÝ@mJƒU—nWK™@@UnKVa„_lykUmKÛnm@™x@ƒUUlwVk™ƒXW@ƒa@Uƒ@@K@ƒkIV™nammVakUlƒ@wX@@kƒ™¯@ƒVVbml@„„°UbULmlVbnbÅK±VƒKVXUJWa@ULWaUU@@U@aWK@UkxUKƒLUUUJ±UkL@V±kk@kam@UV@l@LWl@n@VVUx„LlUUx@VUV™U@aƒIUl™L@°mLU‚ƒbkUUaWUUaUU@aWK—LWJ@bUL@VUVVbU@m@a@kmKmnĉlUK™XƒWUblb—xmIkƒƒU@xWb@lkšVx™LXŽmzVV@bklVVUzm˜@bk„@Vx@xlŽU„@lUbVnl@„Wxnl@n@ŽUbV„mL‚mƒb@`X@lUX@@xlnkLWaUJnnWV™Vn@l„@bULVV@l™V@XnJVX',
  307. ],
  308. encodeOffsets: [[113063, 37784]],
  309. },
  310. },
  311. {
  312. type: 'Feature',
  313. id: '1407',
  314. properties: { name: '晋中市', cp: [112.7747, 37.37], childNum: 11 },
  315. geometry: {
  316. type: 'Polygon',
  317. coordinates: [
  318. '@@@šlInJ„lJ„@‚„ULkJ@bmV@XUJUb‚L@UXKV@ރVbV@VVXI@bVVšKVbÞxVXnWVL@VnLV‚lX„ÒUŽVxUb°n„l@bl@„LšƒVaô҄ÒVb°b@VnLnnV@lmn@lb„U„V@„‚JœUVV‚Xkl@lUzmJ@xšXkl‚bUn„JVšUb„nU‚lb„V@nlLX@lakšV`Ub°š@XVJnU‚L²KlxnI@KV@lbUbVV„KnVl@„zlm@Uš@nŽšI@WUaVl@@mVU„@XkW@ƒnkVKVƒ„_Vw„y@knwVa‚@XalU„@šVnml@„X@V„L‚KVaÞbnnlJšI„mVKn„VVVInVlU„@„m@™mXK@UmyUI@mWUUakamw@wUwmLkakwVƒmK™w@wUam£y@am_ƒW@™UU@knmm„amU@WUa@knw@ƒUUUUV@nƒJm@mVUkKVUUUkKmwƒKULƒKUImV@lUn™nŽm@mbUK@°™bUnmbUmkkƒWUb@am@UXkK@a±@™V™@ĉř„V‚UXVxUVkLWl¯@@bULUlm@@nm`—XƒlWakIkm›VUbUL@Vm@kIƒ@@Kšm@—VaX‚I@W@aU@kUƒVU_™KƒbƒJkkǎ™b@nkKmL™wÅW@kVUUƒVU@WUIƒJmIXmma@_kyVaUUlkUm@ƒkU›x¯Lƒm@L@LUJ™UkVWXUWUL¯wVmUkƒxkL@`›bk„mVnxƒXUWUnmƒƒ@kxU@',
  319. ],
  320. encodeOffsets: [[114087, 37682]],
  321. },
  322. },
  323. {
  324. type: 'Feature',
  325. id: '1408',
  326. properties: { name: '运城市', cp: [111.1487, 35.2002], childNum: 13 },
  327. geometry: {
  328. type: 'Polygon',
  329. coordinates: [
  330. '@@„Vl„nJ˜wkaVa„XšWVLĊknmnL‚l@@bn‚V@UaVU@UVK@aXI˜KXL@bVVVbXVVblV„aVnK@¯šKVk„J@bšVVU@UVwkVƒKVwUUm@@Xk@K@kVUn@lbl@²l@UlK²VVIVV„KVLlw@VXL@b@VV@VŽXbVK‚@XbVIUW„L‚U²ÆLmaUankVKVaƒ¯@ƒnkUa„U°@„š‚n@@kWa„UVaXUW@IXKVw@U™ƒ„™WU@W@@UUƒU@mn@ƒ`m@UUULkUmJ™IUƒ@@UƒK@U@›anƒ™ak_@wmKUwmakV™kmK™V™k¯b™wƒ`kwUIÇx¯»ÇaŃmn@@™mƒmUkV@wkKW@kxmL™UkĉLÝk™xÝw¯lóVU„mV@ĀVVX¦W¤kz@`Vx°„²ĸ‚š@„Ul@x„êĸNJ°¤V„VlXLWnXxmV@nUl@„',
  331. ],
  332. encodeOffsets: [[113232, 36597]],
  333. },
  334. },
  335. {
  336. type: 'Feature',
  337. id: '1402',
  338. properties: { name: '大同市', cp: [113.7854, 39.8035], childNum: 8 },
  339. geometry: {
  340. type: 'Polygon',
  341. coordinates: [
  342. '@@²£šyl@Ȑ˜Ė@bĸŽĢbĸ„˜X„a‚KŤnn@ŎôllÈx„nVnÞDŽV@b‚nXllL°KšbVb@J@b—„‚„@ŽU„„xlKXLlKlXk„@Ulk„JlkUƒVKXUƒÇVIVm@_nǚLšašl‚w„VnU@UUwma@aƒaÝaLmUk@@Wƒ@U@@X™wVWÝUUUk@@VmLƒKV»nwUw™aUL@`mzƒJUIVƒUaUw™KUaVIlJôanÑlLVUn@ša„@VV„@@UUwVK°Vn_lJÆLœéW@UUUÅ@»lm@aÞIVwXW˜UUkkm@U@aƒU@mwU£VWU_kWmƒXwW_°yUkkK@UÇK@kkUVymóK—U@KWIƒbUak@mJ@bkbmLkŽ™UmƒkVU„W¦@lnb@„@Vƒ°ULml@nkVƒa™VmLUnk`±@—XƒWW@kbǦXŽ¯„WxI@xmbmxXlWV„„@bŎUz@J‚b@bÞb™ŽU@Wbk@ƒxk@WX¯VۙƒWÝbÝUkVUU@alI@a@akLWa™m@U¯UUmÇL@K@aU@¯VUkƒKmX@`@œkJ@nV‚Ub@lbVÆXVW„ULU`VbkLUV@XWl@bXJ˜@VbV@Vl',
  343. ],
  344. encodeOffsets: [[115335, 41209]],
  345. },
  346. },
  347. {
  348. type: 'Feature',
  349. id: '1404',
  350. properties: { name: '长治市', cp: [112.8625, 36.4746], childNum: 12 },
  351. geometry: {
  352. type: 'Polygon',
  353. coordinates: [
  354. '@@Uk™Lky@I‚JVa@mÞaWšy@_W@_WƒXVlUVwš@nw°K@m„UƒVaƒmVkU@mmmnLVUmKXa™U@IlKVUnK@UmWkX@WV_Vƒ@akU@a„KWIXyƒIUVmUn™Ua@WaXUVKVmkUWVkUƒLU@@VƒbƒKbƒIUmƒ@mbVL—x›WUUkn±V¯wƒbÅJUbmLkbmKÅKƒbVnUbƒV™KUb™KUbmLKmƒb™aƒKkUm@UŽnn‚VnxUVlUxl¼ƒk¯JUbU@Vbk@WšU@UVóI@`¯nWxkLƒK@nk`Wn@lUnƒVnm‚ƒXU`@mb@lkV@„VnklVVUblz@`nbWnnJ„IVJ@XUVV„UV@lÆXšxnKlL@mšaȍll„I„ašLV`„UlVV@@b@XJWUb@˜™n@L„@lJn@@UVKVaœUlnlJXb„k˜Wn_@mn@VkVK@a°@XklKVUUwVWUšƒĊƚ@šU²@@blLVWn@@bVa„XllVnnaVmša@¯VLnan@‚šmVm@knUVJ',
  355. ],
  356. encodeOffsets: [[116269, 37637]],
  357. },
  358. },
  359. {
  360. type: 'Feature',
  361. id: '1406',
  362. properties: { name: '朔州市', cp: [113.0713, 39.6991], childNum: 5 },
  363. geometry: {
  364. type: 'Polygon',
  365. coordinates: [
  366. '@@XXWVXVWnnlnn@èƼ@„„xlš„ŽV„nblšššVŽÈUVl‚š@„blnœL܃ĊmUkU@Ua‚—@WI@aXk@WVUlKUaV_VKXƒWUUÅka@VaU@mlI@›@_nW„LVl°UV@@b@LÈKVn°V@VšnXblK@b@bkJ@bVVlUÞVÞa„Xܚ°UXWl@„wl@XaV@šÝa@aa@IVyƍ@aƒƒXUWknwna@w‚JXw°ƒWÈ¥kI@W@kmKm™¯IUmkXWWkaƒbkImJ™UkL±aVƒb@lWXkJƒUkƒĉkƒ@UmU@a™KkƒVƒUkJlaU_™yƒ@UU@aUU¯LW`kLWnkJó™ƒbUƒbmK@aU@UVVL@VƒL@„UVULƒK@xUL@VUV@nml¯@UkmKUxmbVbUV@XƒlXVmnVbkxUbU@ƒbm@@VUlUVšb°@VX¯šm‚',
  367. ],
  368. encodeOffsets: [[114615, 40562]],
  369. },
  370. },
  371. {
  372. type: 'Feature',
  373. id: '1405',
  374. properties: { name: '晋城市', cp: [112.7856, 35.6342], childNum: 6 },
  375. geometry: {
  376. type: 'Polygon',
  377. coordinates: [
  378. '@@lV„Lšb„an‚LnKVašLVašL„UVaUm„aÆLnLlanKVaÆI„a°x²UlmVVœX˜wUKna„@Vn„J‚a„L„a@UV@@alUkKVKnkmmVwUk„w@ƒ™@kxWUXƒW@@mƒk@aUa@a¯aƒLkKmwkUm@kL@K@aWIXmƒVƒXƒWkUVakL@UVKƒw@aUK@UUKmLU@¯n™KUwVƒUIWJUWmka™@UXƒJƒk@UkmW@kLWKVƒx@bmI@VUaVU@a¯@UUmVKmX@±`kÝKVxUL±akL@V™bƒLkKmVƒ@XWVUbƒVXb@lm@@lW@@xk„lVUbnnmbUšlJ@„@L„@@V„b@‚WXš„UlkxVV@„šwn@ÜmnLlVkzƒ`UbmL@Vš@XL˜m„VnIÞ@VU°x@VnL˜x„V@LU°',
  379. ],
  380. encodeOffsets: [[115223, 36895]],
  381. },
  382. },
  383. {
  384. type: 'Feature',
  385. id: '1401',
  386. properties: { name: '太原市', cp: [112.3352, 37.9413], childNum: 5 },
  387. geometry: {
  388. type: 'Polygon',
  389. coordinates: [
  390. '@@„@VV@wVKnLVal@na°nšaVJœUlm„L°a@b„@lx@bULUlmx@Ln@lVkn„l˜@XI„w‚K„Vnƒ°aVXVx„ƒUaVU°K„nUlšUVL„KÆVš²Ģ‚lnXalLÈƘL„KUaVkUanmWU™a@WwkUWU¯y¯Ñ@anIl@@aVU„m„I„ymUƒLUUVakaU@@LmJkw±LKmVUI@W¯™VaU_l™kbW@kK@mƒUkaVƒmVaU™ƒIVmalk™W@wnIVy@klkWUU›VI@ƒƒUƒVkam@knU@mmmK@bblVUX@VkLV`@n±KU„ULƒ‚UnVVńUbÇKmV—Imbm@k¼ó@Ul™b@VmV@bXmaƒK@›UUxkV‚V@„xW„UxVnkVVJ@XnJ@XlV²LƂVbnL@lš@°',
  391. ],
  392. encodeOffsets: [[114503, 39134]],
  393. },
  394. },
  395. {
  396. type: 'Feature',
  397. id: '1403',
  398. properties: { name: '阳泉市', cp: [113.4778, 38.0951], childNum: 3 },
  399. geometry: {
  400. type: 'Polygon',
  401. coordinates: [
  402. '@@°@nb„@lb@b„b„b‚@„x²al@lb„KXU@m‚kUWkkmUUƒVwV@XUW@™naVklKXblKnL‚ƒnLVanImaXKlL„ašV@U@KUKW„alƒXK@£WKXUV@VU„ƒUUVW„_V™@W@@K„@šƒUƒƒIWmXUmƒULƒn™JkImmÝaUbLƒK@UƒWk@mn™Uƒ@kVWb@Ubmx@lƒzUxƒ`U„ULml@„XWlƒ@UV@nk@U‚Vb@X™Jm™@@Vknƒyk@ƒzƒJƒnUV@bk@mJ@b°Ò°zXVlVXx‚@šbXVmnVbUlVb',
  403. ],
  404. encodeOffsets: [[115864, 39336]],
  405. },
  406. },
  407. ],
  408. UTF8Encoding: true,
  409. })
  410. var mapFeatures = echarts.getMap(this.mapName).geoJson.features
  411. mapFeatures.forEach(v => {
  412. // 地区名称
  413. var name = v.properties.name
  414. // 地区经纬度
  415. this.geoCoordMap[name] = v.properties.cp
  416. })
  417. myChart.setOption({
  418. tooltip: {
  419. padding: 15,
  420. enterable: true,
  421. transitionDuration: 1,
  422. formatter: (params, ticket, callback) => {
  423. let tipHtml = `
  424. <div class="tooltip-cont">
  425. <p>新开工:<span>工程建设项目</span></p>
  426. <p>总投资额:<span>${params.data.value}亿</span></p>
  427. <p>当前阶段:<span>可论证阶段</span></p>
  428. <p>时间节点:<span>2021.10-2022.10</span></p>
  429. </div>`
  430. return tipHtml
  431. },
  432. },
  433. visualMap: {
  434. min: 0,
  435. max: 300,
  436. right: 0,
  437. bottom: 0,
  438. text: ['高', '低'],
  439. textStyle: {
  440. color: '#f1f1f1'
  441. },
  442. realtime: false,
  443. calculable: true,
  444. inRange: {
  445. color: ['lightskyblue', '#2754b7']
  446. }
  447. },
  448. geo: {
  449. show: true,
  450. map: 'shanxi',
  451. layoutCenter: ['50%', '50%'], //地图位置
  452. layoutSize: '100%',
  453. label: {
  454. normal: {
  455. show: false,
  456. },
  457. emphasis: {
  458. show: false,
  459. },
  460. },
  461. roam: false,
  462. itemStyle: {
  463. normal: {
  464. areaColor: '#1946a8',
  465. shadowColor: '#1946a8',
  466. borderWidth: 1, //设置外层边框
  467. borderColor: '#1946a8',
  468. shadowOffsetX: 10,
  469. shadowOffsetY: 5,
  470. shadowBlur: 2,
  471. },
  472. emphasis: {
  473. areaColor: '#1946a8',
  474. borderColor: '#d4bc1d',
  475. borderWidth: 2, //设置外层边框
  476. },
  477. },
  478. },
  479. series: [
  480. {
  481. name: '散点',
  482. type: 'scatter',
  483. coordinateSystem: 'geo',
  484. data: this.convertData(data),
  485. symbolSize: function (val) {
  486. return 10
  487. },
  488. label: {
  489. normal: {
  490. formatter: '{b}',
  491. position: [10, 10],
  492. fontSize: 15,
  493. fontWeight: 600,
  494. fontStyle: 'italic',
  495. color: '#fff',
  496. show: true,
  497. },
  498. emphasis: {
  499. show: true,
  500. },
  501. },
  502. itemStyle: {
  503. normal: {
  504. color: '#000',
  505. borderWidth: 2,
  506. borderColor: '#fff',
  507. },
  508. },
  509. },
  510. {
  511. type: 'map',
  512. map: this.mapName,
  513. geoIndex: 0,
  514. aspectScale: 0.75, //长宽比
  515. showLegendSymbol: true, // 存在legend时显示
  516. label: {
  517. normal: {
  518. show: true,
  519. },
  520. emphasis: {
  521. show: false,
  522. textStyle: {
  523. color: '#fff',
  524. },
  525. },
  526. },
  527. roam: true,
  528. itemStyle: {
  529. normal: {
  530. areaColor: '#031525',
  531. borderColor: '#3B5077',
  532. },
  533. emphasis: {
  534. areaColor: '#2B91B7',
  535. },
  536. },
  537. animation: false,
  538. data: data,
  539. },
  540. {
  541. name: '点',
  542. type: 'scatter',
  543. coordinateSystem: 'geo',
  544. zlevel: 6,
  545. },
  546. {
  547. name: 'Top 5',
  548. type: 'effectScatter',
  549. coordinateSystem: 'geo',
  550. data: this.convertData(
  551. data
  552. .sort(function (a, b) {
  553. return b.value - a.value
  554. })
  555. .slice(0, 5)
  556. ),
  557. symbolSize: function (val) {
  558. return 15
  559. },
  560. showEffectOn: 'render',
  561. rippleEffect: {
  562. brushType: 'stroke',
  563. },
  564. hoverAnimation: true,
  565. label: {
  566. normal: {
  567. formatter: '{b}',
  568. position: 'left',
  569. show: false,
  570. },
  571. },
  572. itemStyle: {
  573. normal: {
  574. color: 'yellow',
  575. shadowBlur: 10,
  576. shadowColor: 'yellow',
  577. },
  578. },
  579. zlevel: 1000,
  580. },
  581. {
  582. name: '线路',
  583. type: 'lines',
  584. zlevel: 2,
  585. effect: {
  586. show: true,
  587. period: 4, //箭头指向速度,值越小速度越快
  588. trailLength: 0.02, //特效尾迹长度[0,1]值越大,尾迹越长重
  589. symbol: 'arrow', //箭头图标
  590. symbolSize: 5, //图标大小
  591. },
  592. lineStyle: {
  593. normal: {
  594. color: '#00FFFF',
  595. width: 1,
  596. type: 'dashed',
  597. opacity: 0.5, //尾迹线条透明度
  598. curveness: -0.3, //尾迹线条曲直度
  599. },
  600. },
  601. data: moveLine.normal,
  602. },
  603. ],
  604. })
  605. },
  606. initChartL1 () {
  607. let myChart = echarts.init(document.getElementById("echartL1"));
  608. let option = {
  609. grid: {
  610. top: 35,
  611. right: 40,
  612. left: 60,
  613. bottom: 40,
  614. },
  615. tooltip: {
  616. show: true,
  617. trigger: "axis",
  618. axisPointer: {
  619. // 坐标轴指示器,坐标轴触发有效
  620. type: "shadow", // 默认为直线,可选为:'line' | 'shadow'
  621. },
  622. },
  623. xAxis: {
  624. data: ["山西焦煤", "晋能控股", "华阳新材", "潞安化工", "华新燃气", "太重集团", "国际能源", "华远陆港", "水控集团", "文旅集团", "交控集团", '航产集团', '山西建投', '汾酒集团', '大地控股', '云时代', '华舰体育', '神农科技'],
  625. axisTick: {
  626. show: false,
  627. },
  628. // x轴的字体颜色
  629. axisLabel: {
  630. rotate: 40,
  631. textStyle: {
  632. color: "white",
  633. },
  634. },
  635. //y轴线的颜色以及宽度
  636. axisLine: {
  637. show: true,
  638. lineStyle: {
  639. color: "#1E5389",
  640. width: 1,
  641. type: "solid",
  642. },
  643. },
  644. },
  645. yAxis: {
  646. name: '亿元',
  647. nameTextStyle: {//y轴上方单位的颜色
  648. color: '#fff',
  649. },
  650. axisTick: {
  651. lineStyle: {
  652. color: "#18416F",
  653. },
  654. },
  655. // y轴的字体颜色
  656. axisLabel: {
  657. textStyle: {
  658. color: "white",
  659. },
  660. },
  661. splitLine: {
  662. show: true,
  663. lineStyle: {
  664. color: "#204561",
  665. width: 1,
  666. type: "dotted",
  667. },
  668. },
  669. //y轴线的颜色以及宽度
  670. axisLine: {
  671. show: true,
  672. lineStyle: {
  673. color: "#1E5389",
  674. width: 1,
  675. type: "solid",
  676. },
  677. },
  678. },
  679. series: [
  680. // {
  681. // name: "2022年额度",
  682. // type: "bar",
  683. // data: [263.23, 402.18, 73.28, 144.80, 25.56, 8.23, 0, 12.97, 8.56, -1.72, 0, 0, 0, 76.90, 5.03, 9.14, 0, 0],
  684. // showBackground: false,
  685. // backgroundStyle: {
  686. // color: "#18416F",
  687. // },
  688. // barWidth: "10%",
  689. // itemStyle: {
  690. // barBorderRadius: [10, 10, 0, 0],
  691. // color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
  692. // {
  693. // offset: 0,
  694. // color: '#082550',
  695. // },
  696. // {
  697. // offset: 1,
  698. // color: '#69c0ff',
  699. // },
  700. // ]),
  701. // },
  702. // },
  703. {
  704. name: "2023年额度",
  705. type: "bar",
  706. data: [259.91, 400.49, 97.65, 128.96, 24.84, 7.79, 16.15, 16.18, 6.83, 0.00, 33.49, 0.00, 43.39, 76.53, 5.05, 8.59, 0.00, 0.28],
  707. showBackground: false,
  708. backgroundStyle: {
  709. color: "#18416F",
  710. },
  711. barWidth: "10%",
  712. itemStyle: {
  713. barBorderRadius: [10, 10, 0, 0],
  714. color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
  715. {
  716. offset: 0,
  717. color: '#082550',
  718. },
  719. {
  720. offset: 1,
  721. color: '#957DFF',
  722. },
  723. ]),
  724. },
  725. },
  726. ],
  727. legend: {
  728. // data: ["2022年额度", "2023年额度"],
  729. data: ["2023年额度"],
  730. textStyle: {
  731. // 图列内容样式
  732. color: "#fff", // 字体颜色
  733. // fontSize: "10",
  734. },
  735. right: 'center',
  736. icon: "roundRect",
  737. // 小图标的宽高
  738. itemHeight: 5,
  739. },
  740. };
  741. tools.loopShowTooltip(myChart, option, {
  742. nterval: 2000,
  743. loopSeries: true,
  744. })
  745. let that = this
  746. myChart.on('click', function (param) {
  747. console.log(param)
  748. if (param.name == '晋能控股') {
  749. that.showTip2 = true
  750. setTimeout(() => {
  751. // that.initChartR4()
  752. // that.initChartR5()
  753. that.initChartL2b()
  754. })
  755. }
  756. })
  757. myChart.setOption(option);
  758. },
  759. initChartL2b () {
  760. let myChart = echarts.init(this.$refs['echartL2b'])
  761. var value = 0.07;
  762. var data = [value];
  763. let option = {
  764. backgroundColor: 'transparent',
  765. title: [
  766. {
  767. // text: '总额度285.48亿',
  768. // formatter: `<span>总额度</span>285.48亿`,
  769. x: '37%',
  770. y: '80%',
  771. textStyle: {
  772. fontSize: 24,
  773. fontWeight: 'bold',
  774. color: '#2CB7E0',
  775. lineHeight: 16,
  776. textAlign: 'center',
  777. },
  778. }
  779. ],
  780. series: [
  781. {
  782. type: 'liquidFill',
  783. radius: '70%',
  784. center: ['50%', '40%'],
  785. color: [
  786. {
  787. type: 'linear',
  788. x: 0,
  789. y: 0,
  790. x2: 0,
  791. y2: 1,
  792. colorStops: [
  793. {
  794. offset: 0,
  795. color: '#446bf5',
  796. },
  797. {
  798. offset: 1,
  799. color: '#2ca3e2',
  800. },
  801. ],
  802. globalCoord: false,
  803. },
  804. ],
  805. data: [value, value], // data个数代表波浪数
  806. backgroundStyle: {
  807. borderWidth: 1,
  808. color: 'RGBA(51, 66, 127, 0.7)',
  809. },
  810. label: {
  811. normal: {
  812. textStyle: {
  813. fontSize: 30,
  814. color: '#fff',
  815. },
  816. },
  817. },
  818. outline: {
  819. // show: false
  820. borderDistance: 0,
  821. itemStyle: {
  822. borderWidth: 2,
  823. borderColor: 'transparent',
  824. },
  825. },
  826. },
  827. ],
  828. }
  829. myChart.setOption(option)
  830. },
  831. initChartL2 () {
  832. let myChart = echarts.init(this.$refs['echartL2'])
  833. var value = 0.067;
  834. var data = [value];
  835. let option = {
  836. backgroundColor: 'transparent',
  837. title: [
  838. {
  839. // text: '总额度285.48亿',
  840. // formatter: `<span>总额度</span>285.48亿`,
  841. x: '37%',
  842. y: '80%',
  843. textStyle: {
  844. fontSize: 24,
  845. fontWeight: 'bold',
  846. color: '#2CB7E0',
  847. lineHeight: 16,
  848. textAlign: 'center',
  849. },
  850. }
  851. ],
  852. series: [
  853. {
  854. type: 'liquidFill',
  855. radius: '70%',
  856. center: ['50%', '40%'],
  857. color: [
  858. {
  859. type: 'linear',
  860. x: 0,
  861. y: 0,
  862. x2: 0,
  863. y2: 1,
  864. colorStops: [
  865. {
  866. offset: 0,
  867. color: '#446bf5',
  868. },
  869. {
  870. offset: 1,
  871. color: '#2ca3e2',
  872. },
  873. ],
  874. globalCoord: false,
  875. },
  876. ],
  877. data: [value, value], // data个数代表波浪数
  878. backgroundStyle: {
  879. borderWidth: 1,
  880. color: 'RGBA(51, 66, 127, 0.7)',
  881. },
  882. label: {
  883. normal: {
  884. textStyle: {
  885. fontSize: 30,
  886. color: '#fff',
  887. },
  888. },
  889. },
  890. outline: {
  891. // show: false
  892. borderDistance: 0,
  893. itemStyle: {
  894. borderWidth: 2,
  895. borderColor: 'transparent',
  896. },
  897. },
  898. },
  899. ],
  900. }
  901. myChart.setOption(option)
  902. },
  903. initChartL3 () {
  904. let myChart = echarts.init(this.$refs['echartL3'])
  905. option = {
  906. tooltip: {
  907. trigger: 'axis',
  908. formatter: '指标:' + '{c0}' + '<br/>' + '发展线:' + '{c1}' + '<br/>' + '生存线:' + '{c2}', //+ '<br/>'+ '{a1}:{c1}' + '%',
  909. axisPointer: {
  910. type: 'shadow',
  911. },
  912. },
  913. grid: {
  914. top: '10%',
  915. right: '5%',
  916. left: '10%',
  917. bottom: '15%',
  918. },
  919. xAxis: {
  920. // data: ['总投资收益率', '销售利润率', '成本费用利润率', '总资产周转率', '财务内部收益率'],
  921. data: dataType[this.countType],
  922. axisLine: {
  923. show: true, //隐藏X轴轴线
  924. lineStyle: {
  925. color: '#005094',
  926. width: 1,
  927. },
  928. },
  929. axisTick: {
  930. show: true, //隐藏X轴刻度
  931. },
  932. axisLabel: {
  933. show: true,
  934. rotate: 15,
  935. textStyle: {
  936. color: 'rgba(255,255,255,0.6)', //X轴文字颜色
  937. fontSize: 12,
  938. },
  939. },
  940. },
  941. yAxis: [
  942. {
  943. type: 'value',
  944. splitLine: {
  945. show: true,
  946. lineStyle: {
  947. color: '#68b4dd66',
  948. type: 'dashed',
  949. },
  950. },
  951. axisLine: {
  952. show: false
  953. },
  954. axisLabel: {
  955. show: true,
  956. formatter: '{value}',
  957. textStyle: {
  958. color: 'rgba(250,250,250,0.6)',
  959. },
  960. },
  961. nameTextStyle: {
  962. color: '#ebf8ac',
  963. fontSize: 16,
  964. },
  965. },
  966. ],
  967. series: [
  968. {
  969. name: '实际值',
  970. type: 'bar',
  971. barWidth: 15,
  972. itemStyle: {
  973. normal: {
  974. color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
  975. {
  976. offset: 0,
  977. color: '#69c0ff',
  978. },
  979. {
  980. offset: 1,
  981. color: '#082550',
  982. },
  983. ]),
  984. },
  985. },
  986. // data: [70, 52, 33, 41, 52],
  987. data: dataList[this.count + 1][2]
  988. // markLine: {
  989. // symbol: ['none', 'none'],
  990. // data: [
  991. // {
  992. // name: '生存线',
  993. // yAxis: 10,
  994. // lineStyle: {
  995. // color: '#FF8F0A',
  996. // },
  997. // label: {
  998. // formatter: '{b}',
  999. // position: 'middle',
  1000. // color: '#FF8F0A',
  1001. // fontSize: 12,
  1002. // },
  1003. // },
  1004. // {
  1005. // name: '发展线',
  1006. // yAxis: 15,
  1007. // lineStyle: {
  1008. // color: '#00EEA2',
  1009. // },
  1010. // label: {
  1011. // formatter: '{b}',
  1012. // position: 'middle',
  1013. // color: '#00EEA2',
  1014. // fontSize: 12,
  1015. // },
  1016. // },
  1017. // ],
  1018. // label: {
  1019. // distance: [50, 0],
  1020. // },
  1021. // },
  1022. },
  1023. {
  1024. name: '',
  1025. type: 'line',
  1026. barWidth: 15,
  1027. itemStyle: {
  1028. normal: {
  1029. color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
  1030. {
  1031. offset: 0,
  1032. color: '#69c0ff',
  1033. },
  1034. {
  1035. offset: 1,
  1036. color: 'green',
  1037. },
  1038. ]),
  1039. },
  1040. },
  1041. // data: [20, 30, 15, 28, 36],
  1042. data: dataList[this.count + 1][1]
  1043. },
  1044. {
  1045. name: '',
  1046. type: 'line',
  1047. barWidth: 15,
  1048. itemStyle: {
  1049. normal: {
  1050. color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
  1051. {
  1052. offset: 0,
  1053. color: '#69c0ff',
  1054. },
  1055. {
  1056. offset: 1,
  1057. color: 'yellow',
  1058. },
  1059. ]),
  1060. },
  1061. },
  1062. // data: [15, 22, 17, 33, 14],
  1063. data: dataList[this.count + 1][0]
  1064. },
  1065. ],
  1066. }
  1067. myChart.setOption(option)
  1068. // tools.loopShowTooltip(myChart, option, {
  1069. // nterval: 2000,
  1070. // loopSeries: true,
  1071. // })
  1072. },
  1073. initChartL4 () {
  1074. let data = [
  1075. { value: [173.43, 129], name: '煤炭' },
  1076. { value: [23.10, 2], name: '火电' },
  1077. { value: [22.87, 8], name: '冶金' },
  1078. { value: [9.71, 5], name: '焦化' },
  1079. { value: [8.35, 6], name: '其他传统产业' }
  1080. ]
  1081. let count = 0
  1082. data.forEach(item => {
  1083. count += item.value[0]
  1084. })
  1085. let myChart = echarts.init(this.$refs['echartL4'])
  1086. let option = {
  1087. title: {
  1088. text: '传统产业分析',
  1089. x: 'center',
  1090. y: '0%',
  1091. textStyle: {
  1092. color: 'rgba(255,255,255,0.6)',
  1093. fontSize: 12,
  1094. },
  1095. },
  1096. tooltip: {
  1097. trigger: 'item',
  1098. formatter: function (params) {
  1099. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '</br >' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  1100. }
  1101. },
  1102. color: ['#5783ab', '#1a5389', '#a79c57', '#cc8c29', '#91a65f', '#383062', '#034a39'],
  1103. legend: {
  1104. orient: 'horizontal',
  1105. show: false,
  1106. icon: 'circle',
  1107. top: 'bottom',
  1108. orient: 'vertical',
  1109. right: '-3%',
  1110. textStyle: {
  1111. color: '#9DB9EB',
  1112. fontSize: '10px'
  1113. },
  1114. itemWidth: 10,
  1115. itemHeight: 10
  1116. },
  1117. series: [
  1118. {
  1119. name: '',
  1120. type: 'pie',
  1121. // radius: ['0%', '70%'],
  1122. radius: ['50%', '65%'],
  1123. center: ['50%', '55%'],
  1124. itemStyle: {
  1125. normal: {
  1126. borderColor: 'rgba(1,31,64,0.7)',
  1127. borderWidth: 6,
  1128. label: {
  1129. show: false
  1130. },
  1131. },
  1132. },
  1133. labelLine: {
  1134. show: false,
  1135. },
  1136. data,
  1137. },
  1138. ],
  1139. }
  1140. myChart.setOption(option)
  1141. tools.loopShowTooltip(myChart, option, {
  1142. nterval: 2000,
  1143. loopSeries: true,
  1144. })
  1145. let that = this
  1146. myChart.on('click', function (param) {
  1147. console.log(param)
  1148. that.showTip3 = true
  1149. setTimeout(() => {
  1150. that.initChartT1(data, option)
  1151. })
  1152. })
  1153. },
  1154. initChartL5 () {
  1155. let data = [
  1156. { value: [29.26, 102], name: '新一代信息技术' },
  1157. { value: [59.11, 38], name: '高端装备制造' },
  1158. { value: [3.96, 5], name: '新材料' },
  1159. { value: [2.12, 7], name: '生物' },
  1160. { value: [100.09, 79], name: '新能源' },
  1161. { value: [15.48, 32], name: '节能环保' },
  1162. { value: [3.00, 3], name: '相关服务业' },
  1163. ]
  1164. let count = 0
  1165. data.forEach(item => {
  1166. count += item.value[0]
  1167. })
  1168. let myChart = echarts.init(this.$refs['echartL5'])
  1169. let option = {
  1170. title: {
  1171. text: '战略性新兴产业',
  1172. x: 'center',
  1173. y: '0%',
  1174. textStyle: {
  1175. color: 'rgba(255,255,255,0.6)',
  1176. fontSize: 12,
  1177. },
  1178. },
  1179. tooltip: {
  1180. trigger: 'item',
  1181. formatter: function (params) {
  1182. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '</br >' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  1183. }
  1184. },
  1185. color: ['#5783ab', '#1a5389', '#a79c57', '#cc8c29', '#91a65f', '#383062', '#034a39'],
  1186. legend: {
  1187. show: false,
  1188. icon: 'circle',
  1189. top: 'bottom',
  1190. orient: 'vertical',
  1191. right: '-3%',
  1192. textStyle: {
  1193. color: '#9DB9EB',
  1194. fontSize: '10px'
  1195. },
  1196. itemWidth: 10,
  1197. itemHeight: 10
  1198. },
  1199. series: [
  1200. {
  1201. name: '',
  1202. type: 'pie',
  1203. // radius: ['0%', '70%'],
  1204. radius: ['50%', '65%'],
  1205. center: ['50%', '55%'],
  1206. itemStyle: {
  1207. normal: {
  1208. borderColor: 'rgba(1,31,64,0.7)',
  1209. borderWidth: 6,
  1210. label: {
  1211. show: false,
  1212. },
  1213. },
  1214. },
  1215. labelLine: {
  1216. show: false,
  1217. },
  1218. data
  1219. },
  1220. ],
  1221. }
  1222. myChart.setOption(option)
  1223. tools.loopShowTooltip(myChart, option, {
  1224. nterval: 2000,
  1225. loopSeries: true,
  1226. })
  1227. let that = this
  1228. myChart.on('click', function (param) {
  1229. console.log(param)
  1230. that.showTip3 = true
  1231. setTimeout(() => {
  1232. that.initChartT1(data, option)
  1233. })
  1234. })
  1235. },
  1236. initChartL6 () {
  1237. let data = [
  1238. { value: [25.82, 43], name: '化工' },
  1239. { value: [17.36, 21], name: '煤层气' },
  1240. { value: [0.04, 1], name: '文旅康养' },
  1241. { value: [1.51, 7], name: '体育' },
  1242. { value: [9.32, 5], name: '酿造' },
  1243. { value: [71.12, 129], name: '建筑房地产' },
  1244. { value: [9.11, 14], name: '农业' },
  1245. ]
  1246. let count = 0
  1247. data.forEach(item => {
  1248. count += item.value[0]
  1249. })
  1250. let myChart = echarts.init(this.$refs['echartL6'])
  1251. let option = {
  1252. title: {
  1253. text: '特色优势产业',
  1254. x: 'center',
  1255. y: '0%',
  1256. textStyle: {
  1257. color: 'rgba(255,255,255,0.6)',
  1258. fontSize: 12,
  1259. },
  1260. },
  1261. tooltip: {
  1262. trigger: 'item',
  1263. formatter: function (params) {
  1264. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '</br >' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  1265. }
  1266. // position: ['30%', '87%'],
  1267. },
  1268. color: ['#5783ab', '#1a5389', '#a79c57', '#cc8c29', '#91a65f', '#383062', '#034a39'],
  1269. legend: {
  1270. show: false,
  1271. icon: 'circle',
  1272. top: 'bottom',
  1273. orient: 'vertical',
  1274. right: '-3%',
  1275. textStyle: {
  1276. color: '#9DB9EB',
  1277. fontSize: '10px'
  1278. },
  1279. itemWidth: 10,
  1280. itemHeight: 10
  1281. },
  1282. series: [
  1283. {
  1284. name: '',
  1285. type: 'pie',
  1286. // radius: ['0%', '70%'],
  1287. radius: ['50%', '65%'],
  1288. center: ['50%', '55%'],
  1289. itemStyle: {
  1290. normal: {
  1291. borderColor: 'rgba(1,31,64,0.7)',
  1292. borderWidth: 6,
  1293. label: {
  1294. show: false,
  1295. },
  1296. },
  1297. },
  1298. labelLine: {
  1299. show: false,
  1300. },
  1301. data,
  1302. },
  1303. ],
  1304. }
  1305. myChart.setOption(option)
  1306. tools.loopShowTooltip(myChart, option, {
  1307. nterval: 2000,
  1308. loopSeries: true,
  1309. })
  1310. let that = this
  1311. myChart.on('click', function (param) {
  1312. console.log(param)
  1313. that.showTip3 = true
  1314. setTimeout(() => {
  1315. that.initChartT1(data, option)
  1316. })
  1317. })
  1318. },
  1319. initChartL7 () {
  1320. let data = [
  1321. { value: [155.82, 51], name: '交通运输业' },
  1322. { value: [8.47, 19], name: '煤气层管网' },
  1323. { value: [10.64, 24], name: '物流贸易' },
  1324. { value: [41.05, 46], name: '水务' },
  1325. { value: [2.14, 7], name: '其他' },
  1326. ]
  1327. let count = 0
  1328. data.forEach(item => {
  1329. count += item.value[0]
  1330. })
  1331. let myChart = echarts.init(this.$refs['echartL7'])
  1332. let option = {
  1333. title: {
  1334. text: '公共基础等产业',
  1335. x: 'center',
  1336. y: '0%',
  1337. textStyle: {
  1338. color: 'rgba(255,255,255,0.6)',
  1339. fontSize: 12,
  1340. },
  1341. },
  1342. tooltip: {
  1343. trigger: 'item',
  1344. formatter: function (params) {
  1345. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '</br >' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  1346. }
  1347. },
  1348. color: ['#5783ab', '#1a5389', '#a79c57', '#cc8c29', '#91a65f', '#383062', '#034a39'],
  1349. legend: {
  1350. show: false,
  1351. icon: 'circle',
  1352. top: 'bottom',
  1353. orient: 'vertical',
  1354. right: '-3%',
  1355. textStyle: {
  1356. color: '#9DB9EB',
  1357. fontSize: '10px'
  1358. },
  1359. itemWidth: 10,
  1360. itemHeight: 10
  1361. },
  1362. series: [
  1363. {
  1364. name: '',
  1365. type: 'pie',
  1366. // radius: ['0%', '70%'],
  1367. radius: ['50%', '65%'],
  1368. center: ['50%', '55%'],
  1369. itemStyle: {
  1370. normal: {
  1371. borderColor: 'rgba(1,31,64,0.7)',
  1372. borderWidth: 6,
  1373. label: {
  1374. show: false,
  1375. },
  1376. },
  1377. },
  1378. labelLine: {
  1379. show: false,
  1380. },
  1381. data
  1382. },
  1383. ],
  1384. }
  1385. myChart.setOption(option)
  1386. tools.loopShowTooltip(myChart, option, {
  1387. nterval: 2000,
  1388. loopSeries: true,
  1389. })
  1390. let that = this
  1391. myChart.on('click', function (param) {
  1392. console.log(param)
  1393. that.showTip3 = true
  1394. setTimeout(() => {
  1395. that.initChartT1(data, option)
  1396. })
  1397. })
  1398. },
  1399. initChartR4 () {
  1400. let myChart = echarts.init(this.$refs['echartR4'])
  1401. let option = {
  1402. title: {
  1403. text: '2022年的可投资总额',
  1404. x: 'center',
  1405. y: '87%',
  1406. textStyle: {
  1407. color: 'rgba(255,255,255,0.6)',
  1408. fontSize: 12,
  1409. },
  1410. },
  1411. tooltip: {
  1412. trigger: 'item',
  1413. },
  1414. color: ['#69C1FF', '#4B97CC',],
  1415. legend: {
  1416. icon: 'circle',
  1417. top: 'bottom',
  1418. orient: 'vertical',
  1419. right: '1%',
  1420. textStyle: {
  1421. color: '#9DB9EB',
  1422. },
  1423. },
  1424. series: [
  1425. {
  1426. name: '',
  1427. type: 'pie',
  1428. label: {
  1429. normal: {
  1430. show: true,
  1431. position: 'center',
  1432. color: '#4c4a4a',
  1433. formatter: '{total|' + '462.83' + '}' + '\n\r' + '{active|亿元}',
  1434. rich: {
  1435. total: {
  1436. fontSize: 20,
  1437. fontFamily: "微软雅黑",
  1438. color: '#fff'
  1439. },
  1440. active: {
  1441. fontFamily: "微软雅黑",
  1442. fontSize: 15,
  1443. color: '#fff'
  1444. },
  1445. }
  1446. },
  1447. emphasis: {//中间文字显示
  1448. show: true,
  1449. }
  1450. },
  1451. radius: ['40%', '60%'],
  1452. center: ['50%', '45%'],
  1453. itemStyle: {
  1454. normal: {
  1455. label: {
  1456. show: false,
  1457. },
  1458. },
  1459. },
  1460. labelLine: {
  1461. show: false,
  1462. },
  1463. data: [
  1464. { value: 1048, name: '已使用额度' },
  1465. { value: 735, name: '可使用额度' }
  1466. ],
  1467. },
  1468. ],
  1469. }
  1470. myChart.setOption(option)
  1471. tools.loopShowTooltip(myChart, option, {
  1472. nterval: 2000,
  1473. loopSeries: true,
  1474. })
  1475. },
  1476. initChartR5 () {
  1477. let myChart = echarts.init(this.$refs['echartR5'])
  1478. let option = {
  1479. title: {
  1480. text: '2023年的可投资总额',
  1481. x: 'center',
  1482. y: '87%',
  1483. textStyle: {
  1484. color: 'rgba(255,255,255,0.6)',
  1485. fontSize: 12,
  1486. },
  1487. },
  1488. tooltip: {
  1489. trigger: 'item',
  1490. },
  1491. color: ['#69C1FF', '#4B97CC',],
  1492. legend: {
  1493. icon: 'circle',
  1494. top: 'bottom',
  1495. orient: 'vertical',
  1496. right: '1%',
  1497. textStyle: {
  1498. color: '#9DB9EB',
  1499. },
  1500. },
  1501. series: [
  1502. {
  1503. name: '',
  1504. type: 'pie',
  1505. label: {
  1506. normal: {
  1507. show: true,
  1508. position: 'center',
  1509. top: '50',
  1510. color: '#4c4a4a',
  1511. formatter: '{total|' + '462.83' + '}' + '\n\r' + '{active|亿元}',
  1512. rich: {
  1513. total: {
  1514. fontSize: 20,
  1515. fontFamily: "微软雅黑",
  1516. color: '#fff'
  1517. },
  1518. active: {
  1519. fontFamily: "微软雅黑",
  1520. fontSize: 15,
  1521. color: '#fff'
  1522. },
  1523. }
  1524. },
  1525. emphasis: {//中间文字显示
  1526. show: true,
  1527. }
  1528. },
  1529. radius: ['40%', '60%'],
  1530. center: ['50%', '45%'],
  1531. itemStyle: {
  1532. normal: {
  1533. label: {
  1534. show: false,
  1535. },
  1536. },
  1537. },
  1538. labelLine: {
  1539. show: false,
  1540. },
  1541. data: [
  1542. { value: 1048, name: '已使用额度' },
  1543. { value: 735, name: '可使用额度' }
  1544. ],
  1545. },
  1546. ],
  1547. }
  1548. myChart.setOption(option)
  1549. tools.loopShowTooltip(myChart, option, {
  1550. nterval: 2000,
  1551. loopSeries: true,
  1552. })
  1553. },
  1554. initChartR1 () {
  1555. let data = [
  1556. { value: [1098.71, 713], name: '主业' },
  1557. { value: [65.17, 84], name: '辅业' }
  1558. ]
  1559. let count = 0
  1560. data.forEach(item => {
  1561. count += item.value[0]
  1562. })
  1563. let myChart = echarts.init(this.$refs['echartR1'])
  1564. let option = {
  1565. title: {
  1566. text: '主辅业计划占比',
  1567. x: 'center',
  1568. y: '87%',
  1569. textStyle: {
  1570. color: 'rgba(255,255,255,0.6)',
  1571. fontSize: 12,
  1572. },
  1573. },
  1574. tooltip: {
  1575. trigger: 'item',
  1576. // formatter: '{b}' + ':' + '{c}' + '<br/>' + '占比:' + '{d}%',
  1577. // position: ['-5%', '95%'],
  1578. formatter: function (params) {
  1579. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '</br >' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  1580. }
  1581. },
  1582. color: ['#5783ab', '#1a5389', '#a79c57', '#cc8c29', '#91a65f', '#383062', '#034a39'],
  1583. legend: {
  1584. show: false,
  1585. icon: 'circle',
  1586. top: 'bottom',
  1587. orient: 'vertical',
  1588. right: '-3%',
  1589. textStyle: {
  1590. color: '#9DB9EB',
  1591. fontSize: '10px'
  1592. },
  1593. itemWidth: 10,
  1594. itemHeight: 10
  1595. },
  1596. series: [
  1597. {
  1598. name: '',
  1599. type: 'pie',
  1600. radius: ['40%', '60%'],
  1601. center: ['50%', '45%'],
  1602. itemStyle: {
  1603. normal: {
  1604. borderColor: 'rgba(1,31,64,0.7)',
  1605. borderWidth: 6,
  1606. label: {
  1607. show: false,
  1608. },
  1609. },
  1610. },
  1611. labelLine: {
  1612. show: false,
  1613. },
  1614. data,
  1615. },
  1616. ],
  1617. }
  1618. myChart.setOption(option)
  1619. tools.loopShowTooltip(myChart, option, {
  1620. nterval: 2000,
  1621. loopSeries: true,
  1622. })
  1623. let that = this
  1624. myChart.on('click', function (param) {
  1625. console.log(param)
  1626. that.showTip3 = true
  1627. setTimeout(() => {
  1628. that.initChartT1(data, option)
  1629. })
  1630. })
  1631. },
  1632. initChartR2 () {
  1633. let data = [
  1634. { value: [340.77, 168], name: '特别监管类' },
  1635. { value: [390.22, 465], name: '备案类' }
  1636. ]
  1637. let count = 0
  1638. data.forEach(item => {
  1639. count += item.value[0]
  1640. })
  1641. let myChart = echarts.init(this.$refs['echartR2'])
  1642. let option = {
  1643. title: {
  1644. text: '项目管理类型',
  1645. x: 'center',
  1646. y: '87%',
  1647. textStyle: {
  1648. color: 'rgba(255,255,255,0.6)',
  1649. fontSize: 12,
  1650. },
  1651. },
  1652. tooltip: {
  1653. trigger: 'item',
  1654. formatter: function (params) {
  1655. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '</br >' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  1656. }
  1657. // position: ['-5%', '95%'],
  1658. },
  1659. color: ['#5783ab', '#1a5389', '#a79c57', '#cc8c29', '#91a65f', '#383062', '#034a39'],
  1660. legend: {
  1661. show: false,
  1662. icon: 'circle',
  1663. top: 'bottom',
  1664. orient: 'vertical',
  1665. right: '-3%',
  1666. textStyle: {
  1667. color: '#9DB9EB',
  1668. fontSize: '10px'
  1669. },
  1670. itemWidth: 10,
  1671. itemHeight: 10
  1672. },
  1673. series: [
  1674. {
  1675. name: '',
  1676. type: 'pie',
  1677. radius: ['40%', '60%'],
  1678. center: ['50%', '45%'],
  1679. itemStyle: {
  1680. normal: {
  1681. borderColor: 'rgba(1,31,64,0.7)',
  1682. borderWidth: 6,
  1683. label: {
  1684. show: false,
  1685. },
  1686. },
  1687. },
  1688. labelLine: {
  1689. show: false,
  1690. },
  1691. data,
  1692. },
  1693. ],
  1694. }
  1695. myChart.setOption(option)
  1696. tools.loopShowTooltip(myChart, option, {
  1697. nterval: 2000,
  1698. loopSeries: true,
  1699. })
  1700. let that = this
  1701. myChart.on('click', function (param) {
  1702. console.log(param)
  1703. that.showTip3 = true
  1704. setTimeout(() => {
  1705. that.initChartT1(data, option)
  1706. })
  1707. })
  1708. },
  1709. initChartR3 () {
  1710. let myChart = echarts.init(this.$refs['echartR3'])
  1711. let option = {
  1712. title: {
  1713. text: '股权类',
  1714. textStyle: {
  1715. color: '#69C0FF',
  1716. fontSize: 16,
  1717. fontWeight: 500
  1718. },
  1719. top: '10',
  1720. left: '10'
  1721. },
  1722. textStyle: {
  1723. color: '#fff',
  1724. },
  1725. tooltip: {
  1726. trigger: "axis",
  1727. formatter: function (params) {
  1728. var tip = params[0].axisValue + '<br/>' + params[0].marker + params[0].data[1] + ':' + params[0].data[2] + '个,' + params[0].data[3] + '亿元' + '<br/>' + params[1].marker + params[1].data[1] + ':' + params[1].data[2] + '个,' + params[1].data[3] + '亿元';
  1729. return tip
  1730. },
  1731. axisPointer: {
  1732. lineStyle: {
  1733. type: 'dashed',
  1734. width: 2,
  1735. color: 'rgba(255,255,255,0.6)'
  1736. },
  1737. animation: true
  1738. }
  1739. },
  1740. grid: {
  1741. top: '22%',
  1742. right: '5%',
  1743. left: '15%',
  1744. bottom: '15%',
  1745. },
  1746. yAxis: {
  1747. data: ['备案', '特别监管'],
  1748. splitLine: {
  1749. show: true,
  1750. lineStyle: {
  1751. color: '#68b4dd66',
  1752. type: 'dashed',
  1753. },
  1754. },
  1755. axisLine: {
  1756. show: false
  1757. },
  1758. axisLabel: {
  1759. show: true,
  1760. formatter: '{value}',
  1761. textStyle: {
  1762. color: 'rgba(250,250,250,0.6)',
  1763. },
  1764. },
  1765. nameTextStyle: {
  1766. color: '#ebf8ac',
  1767. fontSize: 16,
  1768. },
  1769. },
  1770. xAxis: {
  1771. data: ['项目储备', '项目立项', '可研论证', '投资决策'],
  1772. axisLine: {
  1773. show: true, //隐藏X轴轴线
  1774. lineStyle: {
  1775. color: '#005094',
  1776. width: 1,
  1777. },
  1778. },
  1779. axisTick: {
  1780. show: false, //隐藏X轴刻度
  1781. },
  1782. axisLabel: {
  1783. show: true,
  1784. textStyle: {
  1785. color: 'rgba(255,255,255,0.6)', //X轴文字颜色
  1786. fontSize: 12,
  1787. },
  1788. },
  1789. },
  1790. series: [
  1791. {
  1792. name: '',
  1793. type: 'scatter',
  1794. symbol: 'circle',
  1795. symbolSize: function (data) {
  1796. return Math.sqrt(data[2]) * 3;
  1797. },
  1798. label: {
  1799. emphasis: {
  1800. show: true,
  1801. formatter: function (param) {
  1802. return param.data[2];
  1803. },
  1804. position: 'top'
  1805. }
  1806. },
  1807. itemStyle: {
  1808. normal: {
  1809. color: '#40A9FF'
  1810. }
  1811. },
  1812. data: [
  1813. ['项目储备', '特别监管', 9, 6.49],
  1814. ['项目立项', '特别监管', 0, 0.00],
  1815. ['可研论证', '特别监管', 2, 0.10],
  1816. ['投资决策', '特别监管', 27, 15.52],
  1817. ]
  1818. },
  1819. {
  1820. name: '',
  1821. type: 'scatter',
  1822. symbol: 'circle',
  1823. symbolSize: function (data) {
  1824. return Math.sqrt(data[2]) * 3;
  1825. },
  1826. label: {
  1827. emphasis: {
  1828. show: true,
  1829. formatter: function (param) {
  1830. return param.data[2];
  1831. },
  1832. position: 'top'
  1833. }
  1834. },
  1835. itemStyle: {
  1836. normal: {
  1837. color: '#45DAD1'
  1838. }
  1839. },
  1840. data: [
  1841. ['项目储备', '备案', 39, 8.08],
  1842. ['项目立项', '备案', 7, 1.83],
  1843. ['可研论证', '备案', 19, 1.01],
  1844. ['投资决策', '备案', 73, 17.65],
  1845. ]
  1846. },
  1847. ]
  1848. }
  1849. myChart.setOption(option)
  1850. tools.loopShowTooltip(myChart, option, {
  1851. nterval: 2000,
  1852. loopSeries: true,
  1853. })
  1854. },
  1855. initChartR6 () {
  1856. let myChart = echarts.init(this.$refs['echartR6'])
  1857. let option = {
  1858. title: {
  1859. text: '固定资产',
  1860. textStyle: {
  1861. color: '#69C0FF',
  1862. fontSize: 16,
  1863. fontWeight: 500
  1864. },
  1865. top: '10',
  1866. left: '10'
  1867. },
  1868. textStyle: {
  1869. color: '#fff',
  1870. },
  1871. tooltip: {
  1872. trigger: "axis",
  1873. formatter: function (params) {
  1874. var tip = params[0].axisValue + '<br/>' + params[0].marker + params[0].data[1] + ':' + params[0].data[2] + '个,' + params[0].data[3] + '亿元' + '<br/>' + params[1].marker + params[1].data[1] + ':' + params[1].data[2] + '个,' + params[1].data[3] + '亿元';
  1875. return tip
  1876. },
  1877. axisPointer: {
  1878. lineStyle: {
  1879. type: 'dashed',
  1880. width: 2,
  1881. color: 'rgba(255,255,255,0.6)'
  1882. },
  1883. animation: true
  1884. }
  1885. },
  1886. grid: {
  1887. top: '25%',
  1888. right: '5%',
  1889. left: '15%',
  1890. bottom: '15%',
  1891. },
  1892. yAxis: {
  1893. data: ['备案', '特别监管'],
  1894. splitLine: {
  1895. show: true,
  1896. lineStyle: {
  1897. color: '#68b4dd66',
  1898. type: 'dashed',
  1899. },
  1900. },
  1901. axisLine: {
  1902. show: false
  1903. },
  1904. axisLabel: {
  1905. show: true,
  1906. formatter: '{value}',
  1907. textStyle: {
  1908. color: 'rgba(250,250,250,0.6)',
  1909. },
  1910. },
  1911. nameTextStyle: {
  1912. color: '#ebf8ac',
  1913. fontSize: 16,
  1914. },
  1915. },
  1916. xAxis: {
  1917. data: ['项目储备', '项目立项', '可研论证', '投资决策'],
  1918. axisLine: {
  1919. show: true, //隐藏X轴轴线
  1920. lineStyle: {
  1921. color: '#005094',
  1922. width: 1,
  1923. },
  1924. },
  1925. axisTick: {
  1926. show: false, //隐藏X轴刻度
  1927. },
  1928. axisLabel: {
  1929. show: true,
  1930. textStyle: {
  1931. color: 'rgba(255,255,255,0.6)', //X轴文字颜色
  1932. fontSize: 12,
  1933. },
  1934. },
  1935. },
  1936. series: [
  1937. {
  1938. name: '特别监管',
  1939. type: 'scatter',
  1940. symbol: 'circle',//'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'
  1941. symbolSize: function (data) {
  1942. return Math.sqrt(data[2]) * 3;
  1943. },
  1944. label: {
  1945. emphasis: {
  1946. show: true,
  1947. formatter: function (param) {
  1948. return param.data[2];
  1949. },
  1950. position: 'top'
  1951. }
  1952. },
  1953. itemStyle: {
  1954. normal: {
  1955. color: '#40A9FF'
  1956. }
  1957. },
  1958. data: [
  1959. ['项目储备', '特别监管', 14, 12.05],
  1960. ['项目立项', '特别监管', 2, 1.25],
  1961. ['可研论证', '特别监管', 10, 32.69],
  1962. ['投资决策', '特别监管', 15, 28.53],
  1963. ]
  1964. },
  1965. {
  1966. name: '备案',
  1967. type: 'scatter',
  1968. symbol: 'circle',//'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'
  1969. symbolSize: function (data) {
  1970. return Math.sqrt(data[2]) * 3;
  1971. },
  1972. label: {
  1973. emphasis: {
  1974. show: true,
  1975. formatter: function (param) {
  1976. return param.data[2];
  1977. },
  1978. position: 'top'
  1979. }
  1980. },
  1981. itemStyle: {
  1982. normal: {
  1983. color: '#45DAD1'
  1984. }
  1985. },
  1986. data: [
  1987. ['项目储备', '备案', 27, 23.86],
  1988. ['项目立项', '备案', 1, 1.05],
  1989. ['可研论证', '备案', 14, 18.46],
  1990. ['投资决策', '备案', 40, 38.86],
  1991. ]
  1992. },
  1993. ]
  1994. }
  1995. myChart.setOption(option)
  1996. tools.loopShowTooltip(myChart, option, {
  1997. nterval: 2000,
  1998. loopSeries: true,
  1999. })
  2000. },
  2001. initChartT1 (list, info) {
  2002. let count = 0
  2003. console.log(list, info)
  2004. this.echartTitle = info.title.text
  2005. let data = list
  2006. data.forEach(item => {
  2007. count += item.value[0]
  2008. })
  2009. let option = JSON.parse(JSON.stringify(info))
  2010. option.series[0].center = ['50%', '50%']
  2011. option.series[0].radius = ['60%', '75%']
  2012. option.legend = {
  2013. show: false,
  2014. icon: 'circle',
  2015. top: 'bottom',
  2016. orient: 'vertical',
  2017. right: '2%',
  2018. textStyle: {
  2019. color: '#9DB9EB',
  2020. fontSize: 16
  2021. },
  2022. itemWidth: 10,
  2023. itemHeight: 10
  2024. },
  2025. option.title.text = ''
  2026. option.tooltip = {
  2027. trigger: 'item',
  2028. formatter: function (params) {
  2029. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '</br >' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  2030. }
  2031. }
  2032. option.series[0].itemStyle.normal.label = {
  2033. show: true,
  2034. formatter: function (params) {
  2035. return params.name + ',' + (params.value[0] / count * 100).toFixed(2) + '%' + '\n' + params.value[1] + '个' + ',' + params.value[0] + '亿'
  2036. }
  2037. }
  2038. option.series[0].labelLine.show = true
  2039. let myChart = echarts.init(this.$refs['echartT1'])
  2040. myChart.setOption(option)
  2041. // tools.loopShowTooltip(myChart, option, {
  2042. // nterval: 2000,
  2043. // loopSeries: true,
  2044. // })
  2045. }
  2046. },
  2047. })