enterStatisMain_mobile.js 52 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227
  1. layui.use(['element', 'form', 'tree', 'util', 'laydate'], function () {
  2. var $ = layui.jquery,
  3. form = layui.form,
  4. laydate = layui.laydate,
  5. tree = layui.tree,
  6. layer = layui.layer,
  7. util = layui.util,
  8. element = layui.element,
  9. data1 = [
  10. {
  11. title: '地区生产总值',
  12. id: 1,
  13. children: [{
  14. title: '第一产业',
  15. id: 1000,
  16. type: 101,
  17. clickType: 1,
  18. color1: '#9BCE4A',
  19. color2: '#ffb43e'
  20. }, {
  21. title: '第二产业',
  22. id: 1001,
  23. type: 102,
  24. clickType: 1,
  25. color1: '#29B6F6',
  26. color2: '#5efff5'
  27. }, {
  28. title: '第三产业',
  29. id: 1002,
  30. type: 103,
  31. clickType: 1,
  32. color1: '#34D3EB',
  33. color2: '#9cdc7e'
  34. }]
  35. },
  36. {
  37. title: '规模以上工业增加值增速',
  38. id: 2,
  39. color1: '#9BCE4A',
  40. },
  41. {
  42. title: '建筑业总产值',
  43. id: 3,
  44. color1: '#29B6F6',
  45. },
  46. {
  47. title: '商品房建设与销售',
  48. id: 4,
  49. color1: '#34D3EB',
  50. },
  51. {
  52. title: '社会消费品零售总额总额',
  53. id: 5,
  54. color1: '#9BCE4A',
  55. },
  56. // {
  57. // title: '批发业销售额',
  58. // id: 5,
  59. // type: 201,
  60. // color1: '#9BCE4A'
  61. // },
  62. // {
  63. // title: '零售业销售额',
  64. // id: 6,
  65. // type: 202,
  66. // color1: '#29B6F6',
  67. // },
  68. // {
  69. // title: '住宿业销售额',
  70. // id: 7,
  71. // type: 203,
  72. // color1: '#34D3EB'
  73. // },
  74. // {
  75. // title: '餐饮业销售额',
  76. // id: 8,
  77. // type: 204,
  78. // color1: '#0090f4',
  79. // },
  80. {
  81. title: '地方财政收支',
  82. id: 8,
  83. children: [{
  84. title: '公共财政收入',
  85. id: 6000,
  86. type: 301,
  87. clickType: 3,
  88. color1: '#9BCE4A',
  89. color2: '#ffb43e'
  90. }, {
  91. title: ' 税收收入',
  92. id: 6001,
  93. type: 302,
  94. clickType: 3,
  95. color1: '#29B6F6',
  96. color2: '#5efff5'
  97. }, {
  98. title: '公共财政支出',
  99. id: 6002,
  100. type: 303,
  101. clickType: 3,
  102. color1: '#34D3EB',
  103. color2: '#9cdc7e'
  104. }]
  105. },
  106. // {
  107. // title: '金融机构存贷款',
  108. // id: 9,
  109. // children: [{
  110. // title: '金融机构人民币存款余额',
  111. // id: 7000,
  112. // clickType: 4,
  113. // type: 401,
  114. // color1: '#29B6F6',
  115. // color2: '#ffb43e'
  116. // }, {
  117. // title: '金融机构人民币贷款余额',
  118. // id: 7001,
  119. // clickType: 4,
  120. // type: 402,
  121. // color1: '#34D3EB',
  122. // color2: '#5efff5'
  123. // }]
  124. // }
  125. ];
  126. // if (isMobileUserAgent()){
  127. // window.location = 'enterStatisMain_mobile.html'
  128. // }
  129. laydate.render({
  130. elem: '#test6',
  131. range: ['#test-startDate', '#test-endDate']
  132. });
  133. element.on('tab(test1)', function (e) {
  134. var cur = this.getAttribute('lay-id');
  135. var myChart = echarts.init(document.getElementById(cur));
  136. var option = myChart.getOption();
  137. myChart.clear();
  138. myChart.setOption(option, true);
  139. });
  140. document.getElementById("mainCenter").removeAttribute("_echarts_instance_");
  141. var myChart = echarts.init(document.getElementById('mainCenter'));
  142. getAllIndustry(data1, myChart);
  143. tree.render({
  144. elem: '#test13',
  145. data: data1,
  146. showLine: false, //是否开启连接线
  147. click: function (obj) {
  148. myChart.innerHTML = "";
  149. $('.tableMain').empty();
  150. $('.tableTit').empty();
  151. if (obj.data.title == '地区生产总值') {
  152. getAllIndustry(data1, myChart)
  153. }
  154. if (obj.data.title == '规模以上工业增加值增速') {
  155. getAllScale(obj, myChart)
  156. }
  157. if (obj.data.title == '建筑业总产值') {
  158. getAllConstruction(obj, myChart)
  159. }
  160. if (obj.data.title == '商品房建设与销售') {
  161. getAllMarket(obj, myChart)
  162. }
  163. if (obj.data.title == '社会消费品零售总额总额') {
  164. getinlandTradeL(obj, myChart);
  165. }
  166. // if (obj.data.title == '批发业销售额') {
  167. // getinlandTrade(obj, myChart);
  168. // }
  169. // if (obj.data.title == '零售业销售额') {
  170. // getinlandTrade(obj, myChart);
  171. // }
  172. // if (obj.data.title == '住宿业销售额') {
  173. // getinlandTrade(obj, myChart);
  174. // }
  175. // if (obj.data.title == '餐饮业销售额') {
  176. // getinlandTrade(obj, myChart);
  177. // }
  178. if (obj.data.title == '地方财政收支') {
  179. getAllFinancial(data1, myChart)
  180. }
  181. if (obj.data.title == '金融机构存贷款') {
  182. getAllFinan(data1, myChart)
  183. }
  184. if (obj.data.clickType == 1) {
  185. getIndustryByType(obj, myChart);
  186. }
  187. if (obj.data.clickType == 2) {
  188. getinlandTrade(obj, myChart);
  189. }
  190. if (obj.data.clickType == 3) {
  191. getFinancial(obj, myChart);
  192. }
  193. if (obj.data.clickType == 4) {
  194. getBank(obj, myChart)
  195. }
  196. }
  197. });
  198. // if (isMobileUserAgent()){
  199. // window.location = 'xq_model.html'
  200. // }
  201. });
  202. function isMobileUserAgent() {
  203. return /iphone|ipod|android.*mobile|windows.*phone|blackberry.*mobile/i.test(
  204. window.navigator.userAgent.toLowerCase("")
  205. );
  206. }
  207. function getAllMarket(obj, myChart) {
  208. var str, listdataa;
  209. getData('./json/realtyMarket.json').then(data => {
  210. var list = data.market;
  211. var array = [];
  212. var xdata = [];
  213. for (var i = 0; i < list.length; i++) {
  214. var subData = list[i].totalNum;
  215. if (subData.length == 3) {
  216. xdata.push(list[i].date + '年1季度');
  217. xdata.push(list[i].date + '年1-2季度');
  218. xdata.push(list[i].date + '年1-3季度');
  219. array.push(...subData);
  220. } else {
  221. xdata.push(list[i].date + '年1季度');
  222. xdata.push(list[i].date + '年1-2季度');
  223. xdata.push(list[i].date + '年1-3季度');
  224. xdata.push(list[i].date + '年1-4季度');
  225. array.push(...subData);
  226. }
  227. }
  228. var chat = [{
  229. 'name': obj.data.title,
  230. 'data': array,
  231. 'color1': obj.data.color1,
  232. 'color2': obj.data.color2,
  233. 'xdata': xdata
  234. }]
  235. option = getLine(chat, '万平方米');
  236. myChart.setOption(option, true);
  237. var tabletit = list[0].name;
  238. str = '<th>' + tabletit + '</th>';
  239. listdataa += '<tr>'
  240. listdataa += '<td>值</td>'
  241. for (var j = 0; j < array.length; j++) {
  242. listdataa += '<td>' + array[j] + '万平方米' + '</td>';
  243. }
  244. listdataa += '</tr>'
  245. for (var j = 0; j < list.length; j++) {
  246. for (var k = 0; k < list[j].totalNum.length; k++) {
  247. let a = NoToChinese(Number(k) + 1)
  248. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  249. }
  250. }
  251. $('.tableTit').append(str);
  252. $('.tableMain').append(listdataa);
  253. })
  254. }
  255. function getinlandTradeL(obj, myChart) {
  256. var str, listdataa;
  257. getData('./json/inlandTrade.json').then(data => {
  258. var list = data.trade;
  259. var array = [];
  260. var xdata = [];
  261. for (var i = 0; i < list.length; i++) {
  262. var subData = list[i].totalNum;
  263. if (subData.length == 3) {
  264. xdata.push(list[i].date + '年1季度');
  265. xdata.push(list[i].date + '年1-2季度');
  266. xdata.push(list[i].date + '年1-3季度');
  267. array.push(...subData);
  268. } else {
  269. xdata.push(list[i].date + '年1季度');
  270. xdata.push(list[i].date + '年1-2季度');
  271. xdata.push(list[i].date + '年1-3季度');
  272. xdata.push(list[i].date + '年1-4季度');
  273. array.push(...subData);
  274. }
  275. }
  276. var chat = [{
  277. 'name': obj.data.title,
  278. 'data': array,
  279. 'color1': obj.data.color1,
  280. 'color2': obj.data.color2,
  281. 'xdata': xdata
  282. }]
  283. option = getLine(chat, '万元');
  284. myChart.setOption(option, true);
  285. var tabletit = list[0].name;
  286. str = '<th>' + tabletit + '</th>';
  287. listdataa += '<tr>'
  288. listdataa += '<td>值</td>'
  289. for (var j = 0; j < array.length; j++) {
  290. listdataa += '<td>' + array[j] + '万元' + '</td>';
  291. }
  292. listdataa += '</tr>'
  293. for (var j = 0; j < list.length; j++) {
  294. for (var k = 0; k < list[j].totalNum.length; k++) {
  295. let a = NoToChinese(Number(k) + 1)
  296. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  297. }
  298. }
  299. $('.tableTit').append(str);
  300. $('.tableMain').append(listdataa);
  301. })
  302. }
  303. function getAllConstruction(obj, myChart) {
  304. var str, listdataa;
  305. getData('./json/construction.json').then(data => {
  306. var list = data.construction;
  307. var array = [];
  308. var xdata = [];
  309. for (var i = 0; i < list.length; i++) {
  310. var subData = list[i].totalNum;
  311. if (subData.length == 3) {
  312. xdata.push(list[i].date + '年1季度');
  313. xdata.push(list[i].date + '年1-2季度');
  314. xdata.push(list[i].date + '年1-3季度');
  315. array.push(...subData);
  316. } else {
  317. xdata.push(list[i].date + '年1季度');
  318. xdata.push(list[i].date + '年1-2季度');
  319. xdata.push(list[i].date + '年1-3季度');
  320. xdata.push(list[i].date + '年1-4季度');
  321. array.push(...subData);
  322. }
  323. }
  324. var chat = [{
  325. 'name': obj.data.title,
  326. 'data': array,
  327. 'color1': obj.data.color1,
  328. 'color2': obj.data.color2,
  329. 'xdata': xdata
  330. }]
  331. option = getLine(chat, '万元');
  332. myChart.setOption(option, true);
  333. var tabletit = list[0].name;
  334. str = '<th>' + tabletit + '</th>';
  335. listdataa += '<tr>'
  336. listdataa += '<td>值</td>'
  337. for (var j = 0; j < array.length; j++) {
  338. listdataa += '<td>' + array[j] + '万元' + '</td>';
  339. }
  340. listdataa += '</tr>'
  341. for (var j = 0; j < list.length; j++) {
  342. for (var k = 0; k < list[j].totalNum.length; k++) {
  343. let a = NoToChinese(Number(k) + 1)
  344. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  345. }
  346. }
  347. $('.tableTit').append(str);
  348. $('.tableMain').append(listdataa);
  349. })
  350. }
  351. function getAllScale(obj, myChart) {
  352. var str, listdataa;
  353. getData('./json/scale.json').then(data => {
  354. var list = data.scale;
  355. var array = [];
  356. var xdata = [];
  357. for (var i = 0; i < list.length; i++) {
  358. var subData = list[i].growth;
  359. if (subData.length == 3) {
  360. xdata.push(list[i].date + '年1季度');
  361. xdata.push(list[i].date + '年1-2季度');
  362. xdata.push(list[i].date + '年1-3季度');
  363. array.push(...subData);
  364. } else {
  365. xdata.push(list[i].date + '年1季度');
  366. xdata.push(list[i].date + '年1-2季度');
  367. xdata.push(list[i].date + '年1-3季度');
  368. xdata.push(list[i].date + '年1-4季度');
  369. array.push(...subData);
  370. }
  371. }
  372. var chat = [{
  373. 'name': obj.title,
  374. 'data': array,
  375. 'color1': obj.color1,
  376. 'color2': obj.color2,
  377. 'xdata': xdata
  378. }]
  379. option = getLinel(chat, '%');
  380. myChart.setOption(option, true);
  381. var tabletit = list[0].name;
  382. str = '<th>' + tabletit + '</th>';
  383. listdataa += '<tr>'
  384. listdataa += '<td>增速</td>'
  385. for (var j = 0; j < array.length; j++) {
  386. listdataa += '<td>' + array[j] + '%' + '</td>';
  387. }
  388. listdataa += '</tr>'
  389. for (var j = 0; j < list.length; j++) {
  390. for (var k = 0; k < list[j].growth.length; k++) {
  391. let a = NoToChinese(Number(k) + 1)
  392. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  393. }
  394. }
  395. $('.tableTit').append(str);
  396. $('.tableMain').append(listdataa);
  397. })
  398. }
  399. function getAllIndustry(data1, myChart) {
  400. var str = '';
  401. var listdataa = '';
  402. getData('./json/jdp.json').then(data => {
  403. var children = data1[0].children;
  404. var array = [];
  405. if (children) {
  406. for (var i = 0; i < children.length; i++) {
  407. array.push(getIndustryByTypeAll(data.GDP, children[i]));
  408. }
  409. }
  410. option = getLine(array, '万元');
  411. // myChart.setOption(option, true);
  412. var tabletit = data.GDP[0].name;
  413. str = '<th>' + tabletit + '</th>';
  414. for (var j = 0; j < array.length; j++) {
  415. listdataa += '<tr>'
  416. listdataa += '<td>' + array[j].name + '</td>'
  417. for (var k = 0; k < array[j].data.length; k++) {
  418. listdataa += '<td>' + array[j].data[k] + '万元' + '</td>';
  419. }
  420. listdataa += '</tr>'
  421. }
  422. for (var j = 0; j < data.GDP.length; j++) {
  423. for (var k = 0; k < data.GDP[j].totalNum.length; k++) {
  424. let a = NoToChinese(Number(k) + 1)
  425. str += '<th>' + data.GDP[j].date + '第一至' + a + '季度</th>'
  426. }
  427. }
  428. $('.tableTit').append(str);
  429. $('.tableMain').append(listdataa);
  430. })
  431. }
  432. function getAllwholeScale(data1, myChart) {
  433. var str = '';
  434. var listdataa = '';
  435. getData('./json/inlandTrade.json').then(data => {
  436. var children = data1[4].children;
  437. var array = [];
  438. for (var i = 0; i < children.length; i++) {
  439. array.push(getScaleByTypeAll(data.trade, children[i]));
  440. }
  441. option = getLine(array, '万元');
  442. myChart.setOption(option, true);
  443. var tabletit = data.trade[0].name;
  444. str = '<th>' + tabletit + '</th>';
  445. for (var j = 0; j < array.length; j++) {
  446. listdataa += '<tr>'
  447. listdataa += '<td>' + array[j].name + '</td>'
  448. for (var k = 0; k < array[j].data.length; k++) {
  449. listdataa += '<td>' + array[j].data[k] + '万元' + '</td>';
  450. }
  451. listdataa += '</tr>'
  452. }
  453. for (var j = 0; j < data.trade.length; j++) {
  454. for (var k = 0; k < data.trade[j].totalNum.length; k++) {
  455. let a = NoToChinese(Number(k) + 1)
  456. str += '<th>' + data.trade[j].date + '第一至' + a + '季度</th>'
  457. }
  458. }
  459. $('.tableTit').append(str);
  460. $('.tableMain').append(listdataa);
  461. })
  462. }
  463. function getAllFinancial(data1, myChart) {
  464. var str, listdataa;
  465. getData('./json/financial.json').then(data => {
  466. var children = data1[8].children;
  467. var array = [];
  468. for (var i = 0; i < children.length; i++) {
  469. array.push(getScaleByTypeAll(data.financial, children[i]));
  470. }
  471. option = getLine(array, '万元');
  472. myChart.setOption(option, true);
  473. var tabletit = data.financial[0].name;
  474. str = '<th>' + tabletit + '</th>';
  475. for (var j = 0; j < array.length; j++) {
  476. listdataa += '<tr>'
  477. listdataa += '<td>' + array[j].name + '</td>'
  478. for (var k = 0; k < array[j].data.length; k++) {
  479. listdataa += '<td>' + array[j].data[k] + '万元' + '</td>';
  480. }
  481. listdataa += '</tr>'
  482. }
  483. for (var j = 0; j < data.financial.length; j++) {
  484. for (var k = 0; k < data.financial[j].totalNum.length; k++) {
  485. let a = NoToChinese(Number(k) + 1)
  486. str += '<th>' + data.financial[j].date + '第一至' + a + '季度</th>'
  487. }
  488. }
  489. // for (var j = 0; j < data.financial.length; j++) {
  490. // if (data.financial[j].subData[0].data.firstThridQuarter) {
  491. // for (var k = 0; k < 4; k++) {
  492. // let a = NoToChinese(Number(k) + 1)
  493. // str += '<th>' + data.financial[j].date + '第一至' + a + '季度</th>'
  494. // }
  495. // } else {
  496. // str += '<th>' + data.financial[j].date + '第一至一季度</th>'
  497. // }
  498. // }
  499. $('.tableTit').append(str);
  500. $('.tableMain').append(listdataa);
  501. })
  502. }
  503. function getAllFinan(data1, myChart) {
  504. var str, listdataa;
  505. getData('./json/bank.json').then(data => {
  506. var children = data1[9].children;
  507. var array = [];
  508. for (var i = 0; i < children.length; i++) {
  509. array.push(getScaleByTypeAll(data.finance, children[i]));
  510. }
  511. option = getLine(array, '亿元');
  512. myChart.setOption(option, true);
  513. var tabletit = data.finance[0].name;
  514. str = '<th>' + tabletit + '</th>';
  515. for (var j = 0; j < array.length; j++) {
  516. listdataa += '<tr>'
  517. listdataa += '<td>' + array[j].name + '</td>'
  518. for (var k = 0; k < array[j].data.length; k++) {
  519. listdataa += '<td>' + array[j].data[k] + '亿元' + '</td>';
  520. }
  521. listdataa += '</tr>'
  522. }
  523. for (var j = 0; j < data.finance.length; j++) {
  524. var len = Object.keys(data.finance[j].subData[0].data).length;
  525. for (var k = 0; k < len; k++) {
  526. let a = NoToChinese(Number(k) + 1)
  527. str += '<th>' + data.finance[j].date + '第一至' + a + '季度</th>'
  528. }
  529. }
  530. $('.tableTit').append(str);
  531. $('.tableMain').append(listdataa);
  532. })
  533. }
  534. function getinlandTrade(obj, myChart) {
  535. var str, listdataa;
  536. getData('./json/inlandTrade.json').then(data => {
  537. var list = data.trade;
  538. var array = [];
  539. var xdata = [];
  540. var xname = '';
  541. for (var i = 0; i < list.length; i++) {
  542. var subData = list[i].subData;
  543. if (subData[2].data.firstFourQuarter) {
  544. xdata.push(list[i].date + '年1季度');
  545. xdata.push(list[i].date + '年1-2季度');
  546. xdata.push(list[i].date + '年1-3季度');
  547. xdata.push(list[i].date + '年1-4季度');
  548. } else {
  549. xdata.push(list[i].date + '年1季度');
  550. xdata.push(list[i].date + '年1-2季度');
  551. xdata.push(list[i].date + '年1-3季度');
  552. }
  553. for (var j = 0; j < subData.length; j++) {
  554. if (obj.data.type == subData[j].type) {
  555. xname = subData[j].subName
  556. var ndata = subData[j].data;
  557. array.push(ndata.firstQuarter.totalQuarter ?
  558. ndata.firstQuarter.totalQuarter : 0);
  559. if (ndata.firstSecondQuarter) {
  560. array.push(ndata.firstSecondQuarter.totalQuarter ?
  561. ndata.firstSecondQuarter.totalQuarter : 0);
  562. }
  563. if (ndata.firstThridQuarter) {
  564. array.push(ndata.firstThridQuarter.totalQuarter ?
  565. ndata.firstThridQuarter.totalQuarter : 0);
  566. }
  567. if (ndata.firstFourQuarter) {
  568. array.push(ndata.firstFourQuarter.totalQuarter ?
  569. ndata.firstFourQuarter.totalQuarter : 0);
  570. }
  571. }
  572. }
  573. }
  574. var chat = [{
  575. 'name': obj.data.title,
  576. 'data': array,
  577. 'color1': obj.data.color1,
  578. 'color2': obj.data.color2,
  579. 'xdata': xdata
  580. }]
  581. option = getLine(chat, '万元');
  582. myChart.setOption(option, true);
  583. var tabletit = xname;
  584. str = '<th>' + tabletit + '</th>';
  585. listdataa += '<tr>'
  586. listdataa += '<td>值</td>'
  587. for (var j = 0; j < array.length; j++) {
  588. listdataa += '<td>' + array[j] + '万元' + '</td>';
  589. }
  590. listdataa += '</tr>'
  591. for (var j = 0; j < list.length; j++) {
  592. for (var k = 0; k < list[j].totalNum.length; k++) {
  593. let a = NoToChinese(Number(k) + 1)
  594. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  595. }
  596. }
  597. $('.tableTit').append(str);
  598. $('.tableMain').append(listdataa);
  599. })
  600. }
  601. function getFinancial(obj, myChart) {
  602. var str, listdataa;
  603. getData('./json/financial.json').then(data => {
  604. var list = data.financial;
  605. var array = [];
  606. var xdata = [];
  607. var xname = '';
  608. for (var i = 0; i < list.length; i++) {
  609. var subData = list[i].subData;
  610. if (subData[2].data.firstFourQuarter) {
  611. xdata.push(list[i].date + '年1季度');
  612. xdata.push(list[i].date + '年1-2季度');
  613. xdata.push(list[i].date + '年1-3季度');
  614. xdata.push(list[i].date + '年1-4季度');
  615. } else {
  616. xdata.push(list[i].date + '年1季度');
  617. xdata.push(list[i].date + '年1-2季度');
  618. xdata.push(list[i].date + '年1-3季度');
  619. }
  620. for (var j = 0; j < subData.length; j++) {
  621. if (obj.data.type == subData[j].type) {
  622. xname = subData[j].subName
  623. var ndata = subData[j].data;
  624. array.push(ndata.firstQuarter.totalQuarter ?
  625. ndata.firstQuarter.totalQuarter : 0);
  626. if (ndata.firstSecondQuarter) {
  627. array.push(ndata.firstSecondQuarter.totalQuarter ?
  628. ndata.firstSecondQuarter.totalQuarter : 0);
  629. }
  630. if (ndata.firstThridQuarter) {
  631. array.push(ndata.firstThridQuarter.totalQuarter ?
  632. ndata.firstThridQuarter.totalQuarter : 0);
  633. }
  634. if (ndata.firstFourQuarter) {
  635. array.push(ndata.firstFourQuarter.totalQuarter ?
  636. ndata.firstFourQuarter.totalQuarter : 0);
  637. }
  638. }
  639. }
  640. }
  641. var chat = [{
  642. 'name': obj.data.title,
  643. 'data': array,
  644. 'color1': obj.data.color1,
  645. 'color2': obj.data.color2,
  646. 'xdata': xdata
  647. }]
  648. option = getLine(chat, '万元');
  649. myChart.setOption(option, true);
  650. var tabletit = xname;
  651. str = '<th>' + tabletit + '</th>';
  652. listdataa += '<tr>'
  653. listdataa += '<td>值</td>'
  654. for (var j = 0; j < array.length; j++) {
  655. listdataa += '<td>' + array[j] + '万元' + '</td>';
  656. }
  657. listdataa += '</tr>'
  658. for (var j = 0; j < list.length; j++) {
  659. if (list[j].subData[0].data.firstFourQuarter) {
  660. for (var k = 0; k < 4; k++) {
  661. let a = NoToChinese(Number(k) + 1)
  662. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  663. }
  664. } else {
  665. str += '<th>' + list[j].date + '第一至一季度</th>'
  666. str += '<th>' + list[j].date + '第一至二季度</th>'
  667. str += '<th>' + list[j].date + '第一至三季度</th>'
  668. }
  669. }
  670. $('.tableTit').append(str);
  671. $('.tableMain').append(listdataa);
  672. })
  673. }
  674. function getBank(obj, myChart) {
  675. var str, listdataa;
  676. getData('./json/bank.json').then(data => {
  677. var list = data.finance;
  678. var array = [];
  679. var xdata = [];
  680. var xname = '';
  681. for (var i = 0; i < list.length; i++) {
  682. var subData = list[i].subData;
  683. if (subData[1].data.firstFourQuarter) {
  684. xdata.push(list[i].date + '年1季度');
  685. xdata.push(list[i].date + '年1-2季度');
  686. xdata.push(list[i].date + '年1-3季度');
  687. xdata.push(list[i].date + '年1-4季度');
  688. } else {
  689. xdata.push(list[i].date + '年1季度');
  690. xdata.push(list[i].date + '年1-2季度');
  691. xdata.push(list[i].date + '年1-3季度');
  692. }
  693. for (var j = 0; j < subData.length; j++) {
  694. if (obj.data.type == subData[j].type) {
  695. xname = subData[j].subName
  696. var ndata = subData[j].data;
  697. array.push(ndata.firstQuarter.totalQuarter ?
  698. ndata.firstQuarter.totalQuarter : 0);
  699. if (ndata.firstSecondQuarter) {
  700. array.push(ndata.firstSecondQuarter.totalQuarter ?
  701. ndata.firstSecondQuarter.totalQuarter : 0);
  702. }
  703. if (ndata.firstThridQuarter) {
  704. array.push(ndata.firstThridQuarter.totalQuarter ?
  705. ndata.firstThridQuarter.totalQuarter : 0);
  706. }
  707. if (ndata.firstFourQuarter) {
  708. array.push(ndata.firstFourQuarter.totalQuarter ?
  709. ndata.firstFourQuarter.totalQuarter : 0);
  710. }
  711. }
  712. }
  713. }
  714. var chat = [{
  715. 'name': obj.data.title,
  716. 'data': array,
  717. 'color1': obj.data.color1,
  718. 'color2': obj.data.color2,
  719. 'xdata': xdata
  720. }]
  721. option = getLine(chat, '亿元');
  722. myChart.setOption(option, true);
  723. var tabletit = xname;
  724. str = '<th>' + tabletit + '</th>';
  725. listdataa += '<tr>'
  726. listdataa += '<td>值</td>'
  727. for (var j = 0; j < array.length; j++) {
  728. listdataa += '<td>' + array[j] + '亿元' + '</td>';
  729. }
  730. listdataa += '</tr>'
  731. for (var j = 0; j < list.length; j++) {
  732. if (list[j].subData[0].data.firstSecondQuarter) {
  733. for (var k = 0; k < 4; k++) {
  734. let a = NoToChinese(Number(k) + 1)
  735. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  736. }
  737. } else {
  738. str += '<th>' + list[j].date + '第一至一季度</th>'
  739. }
  740. }
  741. $('.tableTit').append(str);
  742. $('.tableMain').append(listdataa);
  743. })
  744. }
  745. function getIndustryByType(obj, myChart) {
  746. var str, listdataa;
  747. getData('./json/jdp.json').then(data => {
  748. var list = data.GDP;
  749. var array = [];
  750. var xdata = [];
  751. var xname = ''
  752. for (var i = 0; i < list.length; i++) {
  753. var subData = list[i].subData;
  754. if (subData[2].data.firstFourQuarter) {
  755. xdata.push(list[i].date + '年1季度');
  756. xdata.push(list[i].date + '年1-2季度');
  757. xdata.push(list[i].date + '年1-3季度');
  758. xdata.push(list[i].date + '年1-4季度');
  759. } else {
  760. xdata.push(list[i].date + '年1季度');
  761. xdata.push(list[i].date + '年1-2季度');
  762. xdata.push(list[i].date + '年1-3季度');
  763. }
  764. for (var j = 0; j < subData.length; j++) {
  765. if (obj.data.type == subData[j].type) {
  766. xname = subData[j].subName
  767. var ndata = subData[j].data;
  768. array.push(ndata.firstQuarter.totalQuarter ?
  769. ndata.firstQuarter.totalQuarter : 0);
  770. if (ndata.firstSecondQuarter) {
  771. array.push(ndata.firstSecondQuarter.totalQuarter ?
  772. ndata.firstSecondQuarter.totalQuarter : 0);
  773. }
  774. if (ndata.firstThridQuarter) {
  775. array.push(ndata.firstThridQuarter.totalQuarter ?
  776. ndata.firstThridQuarter.totalQuarter : 0);
  777. }
  778. if (ndata.firstFourQuarter) {
  779. array.push(ndata.firstFourQuarter.totalQuarter ?
  780. ndata.firstFourQuarter.totalQuarter : 0);
  781. }
  782. }
  783. }
  784. }
  785. var chat = [{
  786. 'name': obj.data.title,
  787. 'data': array,
  788. 'color1': obj.data.color1,
  789. 'color2': obj.data.color2,
  790. 'xdata': xdata
  791. }]
  792. option = getLine(chat, '万元');
  793. myChart.setOption(option, true);
  794. var tabletit = xname;
  795. str = '<th>' + tabletit + '</th>';
  796. listdataa += '<tr>'
  797. listdataa += '<td>值</td>'
  798. for (var j = 0; j < array.length; j++) {
  799. listdataa += '<td>' + array[j] + '万元' + '</td>';
  800. }
  801. listdataa += '</tr>'
  802. for (var j = 0; j < list.length; j++) {
  803. for (var k = 0; k < list[j].totalNum.length; k++) {
  804. let a = NoToChinese(Number(k) + 1)
  805. str += '<th>' + list[j].date + '第一至' + a + '季度</th>'
  806. }
  807. }
  808. $('.tableTit').append(str);
  809. $('.tableMain').append(listdataa);
  810. })
  811. }
  812. function getIndustryByTypeAll(list, obj) {
  813. var array = [];
  814. var xdata = [];
  815. for (var i = 0; i < list.length; i++) {
  816. var subData = list[i].subData;
  817. if (subData[2].data.firstFourQuarter) {
  818. xdata.push(list[i].date + '年1季度');
  819. xdata.push(list[i].date + '年1-2季度');
  820. xdata.push(list[i].date + '年1-3季度');
  821. xdata.push(list[i].date + '年1-4季度');
  822. } else {
  823. xdata.push(list[i].date + '年1季度');
  824. xdata.push(list[i].date + '年1-2季度');
  825. xdata.push(list[i].date + '年1-3季度');
  826. }
  827. for (var j = 0; j < subData.length; j++) {
  828. if (obj.type == subData[j].type) {
  829. var ndata = subData[j].data;
  830. array.push(ndata.firstQuarter.totalQuarter ?
  831. ndata.firstQuarter.totalQuarter : 0);
  832. if (ndata.firstSecondQuarter) {
  833. array.push(ndata.firstSecondQuarter.totalQuarter ?
  834. ndata.firstSecondQuarter.totalQuarter : 0);
  835. }
  836. if (ndata.firstThridQuarter) {
  837. array.push(ndata.firstThridQuarter.totalQuarter ?
  838. ndata.firstThridQuarter.totalQuarter : 0);
  839. }
  840. if (ndata.firstFourQuarter) {
  841. array.push(ndata.firstFourQuarter.totalQuarter ?
  842. ndata.firstFourQuarter.totalQuarter : 0);
  843. }
  844. }
  845. }
  846. }
  847. return chat = {
  848. 'name': obj.title,
  849. 'data': array,
  850. 'color1': obj.color1,
  851. 'color2': obj.color2,
  852. 'xdata': xdata
  853. }
  854. }
  855. function getScaleByTypeAll(list, obj) {
  856. var array = [];
  857. var xdata = [];
  858. for (var i = 0; i < list.length; i++) {
  859. var subData = list[i].subData;
  860. if (subData[1].data.firstFourQuarter) {
  861. xdata.push(list[i].date + '年1季度');
  862. xdata.push(list[i].date + '年1-2季度');
  863. xdata.push(list[i].date + '年1-3季度');
  864. xdata.push(list[i].date + '年1-4季度');
  865. } else {
  866. xdata.push(list[i].date + '年1季度');
  867. xdata.push(list[i].date + '年1-2季度');
  868. xdata.push(list[i].date + '年1-3季度');
  869. }
  870. for (var j = 0; j < subData.length; j++) {
  871. if (obj.type == subData[j].type) {
  872. var ndata = subData[j].data;
  873. array.push(ndata.firstQuarter.totalQuarter ?
  874. ndata.firstQuarter.totalQuarter : 0);
  875. if (ndata.firstSecondQuarter) {
  876. array.push(ndata.firstSecondQuarter.totalQuarter ?
  877. ndata.firstSecondQuarter.totalQuarter : 0);
  878. }
  879. if (ndata.firstThridQuarter) {
  880. array.push(ndata.firstThridQuarter.totalQuarter ?
  881. ndata.firstThridQuarter.totalQuarter : 0);
  882. }
  883. if (ndata.firstFourQuarter) {
  884. array.push(ndata.firstFourQuarter.totalQuarter ?
  885. ndata.firstFourQuarter.totalQuarter : 0);
  886. }
  887. }
  888. }
  889. }
  890. return chat = {
  891. 'name': obj.title,
  892. 'data': array,
  893. 'color1': obj.color1,
  894. 'color2': obj.color2,
  895. 'xdata': xdata
  896. }
  897. }
  898. var list = ''
  899. function getData(url) {
  900. return new Promise((resolve, reject) => {
  901. $.ajax({
  902. url: url,
  903. dataType: 'json',
  904. success: function (scenetree) {
  905. if (scenetree) {
  906. resolve(scenetree);
  907. }
  908. }
  909. });
  910. })
  911. }
  912. getData('./json/construction.json').then(data => {
  913. var myChartConstruction = echarts.init(document.getElementById('constructionmain'))
  914. var option = getBar(data.construction, '万元');
  915. myChartConstruction.setOption(option, true);
  916. })
  917. getData('./json/realtyMarket.json').then(data => {
  918. var myChartConstruction = echarts.init(document.getElementById('realtyMarketmain'))
  919. var option = getBar(data.market, '万平方米');
  920. myChartConstruction.setOption(option, true);
  921. })
  922. getData('./json/inlandTrade.json').then(data => {
  923. var myChartConstruction = echarts.init(document.getElementById('inlandTrademain'));
  924. myChartConstruction.clear();
  925. var option = getBar(data.trade, '万元');
  926. myChartConstruction.setOption(option, true);
  927. })
  928. getData('./json/financial.json').then(data => {
  929. var myChartConstructionFinancial = echarts.init(document.getElementById('publicIncomemain'))
  930. var getOption = getOtherBar(data.financial, '万元');
  931. var optionFinancial = getOption('公共财政收入');
  932. myChartConstructionFinancial.setOption(optionFinancial);
  933. $(".togglePic").click(function () {
  934. var newKey = $(this).html();
  935. var optionFinancial = getOption(newKey);
  936. myChartConstructionFinancial.clear();
  937. myChartConstructionFinancial.setOption(optionFinancial);
  938. })
  939. })
  940. getData('./json/bank.json').then(data => {
  941. var myChartConstructionBank = echarts.init(document.getElementById('bankmain'))
  942. var getOption = getOtherBar(data.finance, '亿元');
  943. var optionBank = getOption('金融机构人民币存款余额');
  944. myChartConstructionBank.setOption(optionBank);
  945. $(".togglePic2").click(function () {
  946. var newKey = $(this).html();
  947. var optionBank = getOption(newKey);
  948. myChartConstructionBank.clear();
  949. myChartConstructionBank.setOption(optionBank);
  950. })
  951. })
  952. function getBar(list, unit) {
  953. var dateNum = ['date'];
  954. var alloneBasis = [];
  955. var allData = ['季度'];
  956. for (var i = 0; i < list.length; i++) {
  957. for (var j = 1; j <= list[i].totalNum.length; j++) {
  958. var str = ' ';
  959. if (j == 1) {
  960. str = list[i].date + '年' + ' ' + '第1季度';
  961. dateNum.push(str);
  962. } else {
  963. str = list[i].date + '年' + ' ' + '第1~' + j + '季度';
  964. dateNum.push(str);
  965. }
  966. }
  967. var totalNumList = list[i].totalNum;
  968. for (var k = 0; k < totalNumList.length; k++) {
  969. allData.push(totalNumList[k]);
  970. }
  971. var alloneBasisList = list[i].alloneBasis;
  972. for (var n = 0; n < alloneBasisList.length; n++) {
  973. alloneBasis.push(alloneBasisList[n]);
  974. }
  975. };
  976. var sourceData = [dateNum, allData];
  977. return {
  978. legend: {
  979. textStyle:{
  980. fontSize: 30
  981. }
  982. },
  983. grid: {
  984. left: '2%',
  985. right: '10%',
  986. bottom: '-2%',
  987. width: 1000,
  988. containLabel: true
  989. },
  990. dataZoom:[//x轴滑动条
  991. {
  992. type: 'slider',
  993. show: true,
  994. xAxisIndex: [0],
  995. start: 0, //初始化时,滑动条宽度开始标度
  996. bottom: '7%',
  997. end: 45,
  998. height: 2,
  999. fillerColor:'#3E86FF',
  1000. showDataShadow: false,//是否显示数据阴影 默认auto
  1001. showDetail: false,//即拖拽时候是否显示详细数值信息 默认true
  1002. },
  1003. {
  1004. type:'inside',
  1005. xAxisIndex:0,
  1006. zoomOnMouseWheel:false, //滚轮是否触发缩放
  1007. moveOnMouseMove:true, //鼠标滚轮触发滚动
  1008. moveOnMouseWheel:true
  1009. }
  1010. ],
  1011. tooltip: {
  1012. trigger: 'item',
  1013. formatter: function (params) {
  1014. var htmlStr = '';
  1015. var color = params.color; //图例颜色
  1016. var seriesName = params.seriesName; //图例名称
  1017. var xName = params.name; //x轴的名称
  1018. var value = params.value; //y轴值
  1019. var htmlStr = '<div style="margin-right: 5px; font-size: 19pt;">';
  1020. htmlStr += seriesName + '<br/>';
  1021. htmlStr +=
  1022. '<span style="margin-right: 5px; font-size: 19pt; font-family: Consolas;display: inline-block; width: 10px; height: 10px; border-radius: 50%; background-color:' +
  1023. color + ' ;"></span>';
  1024. htmlStr += "<span style='min-height: 20pt; font-size: 17pt'>";
  1025. htmlStr += xName;
  1026. htmlStr += '</span>';
  1027. htmlStr += "<span style='min-height: 20pt; font-size: 17pt; margin-left: 20px'>";
  1028. if (!value.length) {
  1029. htmlStr += value + '%';
  1030. } else {
  1031. htmlStr += value[params.seriesIndex + 1] + unit; //选择对应value的坐标
  1032. }
  1033. htmlStr += '</span>'
  1034. htmlStr += '</div>';
  1035. return htmlStr;
  1036. }
  1037. },
  1038. dataset: {
  1039. source: sourceData
  1040. },
  1041. xAxis: [{
  1042. type: 'category',
  1043. axisLabel: {
  1044. formatter: '{value}',
  1045. interval: 0,
  1046. rotate: -40,
  1047. fontSize: 40
  1048. },
  1049. },
  1050. ],
  1051. yAxis: [{
  1052. gridIndex: 0,
  1053. axisLabel: {
  1054. formatter: '{value}' + unit,
  1055. fontSize: 20
  1056. }
  1057. },
  1058. {
  1059. type: 'value',
  1060. axisLabel: {
  1061. formatter: '{value}%',
  1062. fontSize: 30
  1063. }
  1064. }
  1065. ],
  1066. series: [{
  1067. type: 'bar',
  1068. seriesLayoutBy: 'row',
  1069. itemStyle: {
  1070. normal: {
  1071. color: function (params) {
  1072. // build a color map as your need.
  1073. var colorList = [
  1074. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1075. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1076. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1077. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1078. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1079. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1080. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1081. ];
  1082. return colorList[params.dataIndex]
  1083. },
  1084. }
  1085. },
  1086. },
  1087. {
  1088. name: '同比增减(%)',
  1089. type: 'line',
  1090. color: ['#91CC75'],
  1091. yAxisIndex: 1,
  1092. data: alloneBasis,
  1093. symbolSize: 3, //一定要加这个字段才能显示
  1094. itemStyle: {
  1095. normal: {
  1096. label: {
  1097. show: true,
  1098. position: 'top',
  1099. textStyle: {
  1100. color: '#000'
  1101. },
  1102. fontSize: 30
  1103. }
  1104. }
  1105. },
  1106. }
  1107. ]
  1108. }
  1109. }
  1110. getData('./json/jdp.json').then(data => {
  1111. var list = data.GDP
  1112. var myChart = echarts.init(document.getElementById('gdpmain'));
  1113. var option = getBarg(list, '%');
  1114. myChart.setOption(option, true);
  1115. })
  1116. getData('./json/scale.json').then(data => {
  1117. var myChartScale = echarts.init(document.getElementById('scalemain'))
  1118. var option = getBarl(data.scale, '%');
  1119. myChartScale.setOption(option, true);
  1120. })
  1121. getData('./json/fixedAssets.json').then(data => {
  1122. var myChartConstruction = echarts.init(document.getElementById('fixedAssetsmain'))
  1123. var option = getBarl(data.fixedAssets, '%');
  1124. myChartConstruction.setOption(option, true);
  1125. })
  1126. function getBarl(list, unit) {
  1127. // var dateNum = ['date'];
  1128. var dateNum = [];
  1129. var alloneBasis = [];
  1130. var growth = [];
  1131. var allData = ['季度'];
  1132. for (var i = 0; i < list.length; i++) {
  1133. for (var j = 1; j <= list[i].totalNum.length; j++) {
  1134. var str = ' ';
  1135. if (j == 1) {
  1136. str = list[i].date + '年' + ' ' + '第1季度';
  1137. dateNum.push(str);
  1138. } else {
  1139. str = list[i].date + '年' + ' ' + '第1~' + j + '季度';
  1140. dateNum.push(str);
  1141. }
  1142. }
  1143. var totalNumList = list[i].totalNum;
  1144. for (var k = 0; k < totalNumList.length; k++) {
  1145. allData.push(totalNumList[k]);
  1146. }
  1147. var alloneBasisList = list[i].alloneBasis;
  1148. for (var n = 0; n < alloneBasisList.length; n++) {
  1149. alloneBasis.push(alloneBasisList[n]);
  1150. }
  1151. var growthList = list[i].growth;
  1152. if (list[i].growth) {
  1153. for (var n = 0; n < growthList.length; n++) {
  1154. growth.push(growthList[n]);
  1155. }
  1156. }
  1157. };
  1158. var sourceData = [dateNum, alloneBasis];
  1159. return {
  1160. legend: {
  1161. textStyle:{
  1162. fontSize: 30
  1163. }
  1164. },
  1165. grid: {
  1166. left: '2%',
  1167. right: '10%',
  1168. bottom: '-2%',
  1169. containLabel: true
  1170. },
  1171. dataZoom:[//x轴滑动条
  1172. {
  1173. type: 'slider',
  1174. show: true,
  1175. xAxisIndex: [0],
  1176. start: 0, //初始化时,滑动条宽度开始标度
  1177. bottom: '7%',
  1178. end: 45,
  1179. height: 2,
  1180. fillerColor:'#3E86FF',
  1181. showDataShadow: false,//是否显示数据阴影 默认auto
  1182. showDetail: false,//即拖拽时候是否显示详细数值信息 默认true
  1183. },
  1184. {
  1185. type:'inside',
  1186. xAxisIndex:0,
  1187. zoomOnMouseWheel:false, //滚轮是否触发缩放
  1188. moveOnMouseMove:true, //鼠标滚轮触发滚动
  1189. moveOnMouseWheel:true
  1190. }
  1191. ],
  1192. tooltip: {
  1193. trigger: 'item',
  1194. formatter: function (params) {
  1195. var htmlStr = '';
  1196. var color = params.color; //图例颜色
  1197. var seriesName = params.seriesName; //图例名称
  1198. var xName = params.name; //x轴的名称
  1199. var value = params.value; //y轴值
  1200. var htmlStr = '<div style="margin-right: 5px; font-size: 19pt;">';
  1201. htmlStr += seriesName + '<br/>';
  1202. htmlStr +=
  1203. '<span style="margin-right: 5px; font-size: 19pt; font-family: Consolas;display: inline-block; width: 10px; height: 10px; border-radius: 50%; background-color:' +
  1204. color + ' ;"></span>';
  1205. htmlStr += "<span style='min-height: 20pt; font-size: 16pt'>";
  1206. htmlStr += xName;
  1207. htmlStr += '</span>';
  1208. htmlStr += "<span style='min-height: 20pt; font-size: 16pt; margin-left: 20px'>";
  1209. if (!value.length) {
  1210. htmlStr += value + '%';
  1211. } else {
  1212. htmlStr += value[params.seriesIndex + 1] + unit; //选择对应value的坐标
  1213. }
  1214. htmlStr += '</span>'
  1215. htmlStr += '</div>';
  1216. return htmlStr;
  1217. }
  1218. },
  1219. dataset: {
  1220. source: sourceData
  1221. },
  1222. xAxis: [{
  1223. type: 'category',
  1224. axisLabel: {
  1225. formatter: '{value}',
  1226. interval: 0,
  1227. rotate: -40,
  1228. fontSize: 40
  1229. },
  1230. data: sourceData[0]
  1231. },
  1232. ],
  1233. yAxis: [{
  1234. gridIndex: 0,
  1235. axisLabel: {
  1236. formatter: '{value}' + unit,
  1237. fontSize: 40
  1238. }
  1239. },
  1240. {
  1241. type: 'value',
  1242. axisLabel: {
  1243. formatter: '{value}%',
  1244. fontSize: 40
  1245. }
  1246. }
  1247. ],
  1248. series: [
  1249. // {
  1250. // name: '同比增减(%)',
  1251. // type: 'line',
  1252. // color: ['#91CC75'],
  1253. // yAxisIndex: 0,
  1254. // data: alloneBasis
  1255. // },
  1256. {
  1257. name: '增速(%)',
  1258. type: 'line',
  1259. color: ['#448BEE'],
  1260. yAxisIndex: 0,
  1261. data: growth,
  1262. symbolSize: 3, //一定要加这个字段才能显示
  1263. itemStyle: {
  1264. normal: {
  1265. label: {
  1266. show: true,
  1267. position: 'top',
  1268. textStyle: {
  1269. color: '#000'
  1270. },
  1271. fontSize:30
  1272. }
  1273. }
  1274. },
  1275. }
  1276. ]
  1277. }
  1278. }
  1279. function getBarg(list, unit) {
  1280. // var dateNum = ['date'];
  1281. var dateNum = [];
  1282. var alloneBasis = [];
  1283. var growth = [];
  1284. var allData = ['季度'];
  1285. for (var i = 0; i < list.length; i++) {
  1286. for (var j = 1; j <= list[i].totalNum.length; j++) {
  1287. var str = ' ';
  1288. if (j == 1) {
  1289. str = list[i].date + '年' + ' ' + '第1季度';
  1290. dateNum.push(str);
  1291. } else {
  1292. str = list[i].date + '年' + ' ' + '第1~' + j + '季度';
  1293. dateNum.push(str);
  1294. }
  1295. }
  1296. var totalNumList = list[i].totalNum;
  1297. for (var k = 0; k < totalNumList.length; k++) {
  1298. allData.push(totalNumList[k]);
  1299. }
  1300. var alloneBasisList = list[i].alloneBasis;
  1301. for (var n = 0; n < alloneBasisList.length; n++) {
  1302. alloneBasis.push(alloneBasisList[n]);
  1303. }
  1304. var growthList = list[i].growth;
  1305. if (list[i].growth) {
  1306. for (var n = 0; n < growthList.length; n++) {
  1307. growth.push(growthList[n]);
  1308. }
  1309. }
  1310. };
  1311. var sourceData = [dateNum, alloneBasis];
  1312. return {
  1313. legend: {
  1314. textStyle:{
  1315. fontSize: 30
  1316. }
  1317. },
  1318. grid: {
  1319. left: '2%',
  1320. right: '10%',
  1321. bottom: '-1%',
  1322. width: 1000,
  1323. containLabel: true
  1324. },
  1325. dataZoom:[//x轴滑动条
  1326. {
  1327. type: 'slider',
  1328. show: true,
  1329. xAxisIndex: [0],
  1330. start: 0, //初始化时,滑动条宽度开始标度
  1331. bottom: '7%',
  1332. end: 45,
  1333. height: 2,
  1334. fillerColor:'#3E86FF',
  1335. showDataShadow: false,//是否显示数据阴影 默认auto
  1336. showDetail: false,//即拖拽时候是否显示详细数值信息 默认true
  1337. },
  1338. {
  1339. type:'inside',
  1340. xAxisIndex:0,
  1341. zoomOnMouseWheel:false, //滚轮是否触发缩放
  1342. moveOnMouseMove:true, //鼠标滚轮触发滚动
  1343. moveOnMouseWheel:true
  1344. }
  1345. ],
  1346. tooltip: {
  1347. trigger: 'item',
  1348. formatter: function (params) {
  1349. // console.log(params);
  1350. var htmlStr = '';
  1351. var color = params.color; //图例颜色
  1352. var seriesName = params.seriesName; //图例名称
  1353. var xName = params.name; //x轴的名称
  1354. var value = params.value; //y轴值
  1355. var htmlStr = '<div style="margin-right: 5px; font-size: 19pt;">';
  1356. htmlStr += seriesName + '<br/>';
  1357. htmlStr +=
  1358. '<span style="margin-right: 5px; font-size: 19pt; font-family: Consolas;display: inline-block; width: 10px; height: 10px; border-radius: 50%; background-color:' +
  1359. color + ' ;"></span>';
  1360. htmlStr += "<span style='min-height: 20pt; font-size: 16pt'>";
  1361. htmlStr += xName;
  1362. htmlStr += '</span>';
  1363. htmlStr += "<span style='min-height: 20pt; font-size: 16pt; margin-left: 20px'>";
  1364. // console.log(params.data.length);
  1365. if (!value.length) {
  1366. htmlStr += value + '%';
  1367. } else {
  1368. htmlStr += value[params.seriesIndex + 1] + unit; //选择对应value的坐标
  1369. }
  1370. htmlStr += '</span>'
  1371. htmlStr += '</div>';
  1372. return htmlStr;
  1373. }
  1374. },
  1375. dataset: {
  1376. source: sourceData
  1377. },
  1378. xAxis: [{
  1379. type: 'category',
  1380. axisLabel: {
  1381. formatter: '{value}',
  1382. interval: 0,
  1383. rotate: -40,
  1384. fontSize: 40
  1385. },
  1386. data: sourceData[0]
  1387. },
  1388. ],
  1389. yAxis: [{
  1390. gridIndex: 0,
  1391. axisLabel: {
  1392. formatter: '{value}' + unit,
  1393. fontSize: 40
  1394. }
  1395. },
  1396. {
  1397. type: 'value',
  1398. axisLabel: {
  1399. formatter: '{value}%',
  1400. fontSize: 40
  1401. }
  1402. }
  1403. ],
  1404. series: [
  1405. // {
  1406. // name: '同比增减(%)',
  1407. // type: 'line',
  1408. // color: ['#91CC75'],
  1409. // yAxisIndex: 0,
  1410. // data: alloneBasis
  1411. // },
  1412. {
  1413. name: '同比增减(%)',
  1414. type: 'line',
  1415. color: ['#91CC75'],
  1416. yAxisIndex: 0,
  1417. fontSize:40,
  1418. data: growth,
  1419. symbolSize: 3, //一定要加这个字段才能显示
  1420. itemStyle: {
  1421. normal: {
  1422. label: {
  1423. show: true,
  1424. position: 'top',
  1425. textStyle: {
  1426. color: '#000'
  1427. },
  1428. fontSize:30
  1429. }
  1430. }
  1431. },
  1432. }
  1433. ]
  1434. }
  1435. }
  1436. function getOtherBar(list, unit) {
  1437. var dateNum = ['date'];
  1438. for (var i = 0; i < list.length; i++) {
  1439. if (list[i].subData[0].data.firstFourQuarter) {
  1440. for (var j = 1; j <= 4; j++) {
  1441. var str = ' ';
  1442. if (j == 1) {
  1443. str = list[i].date + '年' + ' ' + '第1季度';
  1444. dateNum.push(str);
  1445. } else {
  1446. str = list[i].date + '年' + ' ' + '第1~' + j + '季度';
  1447. dateNum.push(str);
  1448. }
  1449. }
  1450. } else {
  1451. for (var j = 1; j <= 3; j++) {
  1452. var str = ' ';
  1453. if (j == 1) {
  1454. str = list[i].date + '年' + ' ' + '第1季度';
  1455. dateNum.push(str);
  1456. } else {
  1457. str = list[i].date + '年' + ' ' + '第1~' + j + '季度';
  1458. dateNum.push(str);
  1459. }
  1460. }
  1461. }
  1462. };
  1463. var listZero = list[0].subData;
  1464. var listName = {};
  1465. for (var n = 0; n < listZero.length; n++) {
  1466. const name = listZero[n].subName;
  1467. // console.log(name);
  1468. const quarter = ['季度'];
  1469. var alloneBasis = [];
  1470. for (let i = 0; i < list.length; i++) {
  1471. const current = list[i].subData.find(item => item.subName === name).data;
  1472. quarter.push(current.firstQuarter.totalQuarter);
  1473. alloneBasis.push(current.firstQuarter.oneBasis);
  1474. if (current.firstSecondQuarter) {
  1475. quarter.push(current.firstSecondQuarter.totalQuarter);
  1476. alloneBasis.push(current.firstSecondQuarter.oneBasis);
  1477. }
  1478. if (current.firstThridQuarter) {
  1479. quarter.push(current.firstThridQuarter.totalQuarter);
  1480. alloneBasis.push(current.firstThridQuarter.oneBasis);
  1481. }
  1482. if (current.firstFourQuarter) {
  1483. quarter.push(current.firstFourQuarter.totalQuarter);
  1484. alloneBasis.push(current.firstFourQuarter.oneBasis);
  1485. }
  1486. }
  1487. var sourceData = [dateNum, quarter];
  1488. }
  1489. return function getOption(k) {
  1490. const quarter3 = ['季度'];
  1491. var alloneBasis = [];
  1492. for (let i = 0; i < list.length; i++) {
  1493. const current = list[i].subData.find(item => item.subName === k);
  1494. if (current) {
  1495. const currentList = list[i].subData.find(item => item.subName === k).data;
  1496. quarter3.push(currentList.firstQuarter.totalQuarter);
  1497. alloneBasis.push(currentList.firstQuarter.oneBasis);
  1498. if (currentList.firstSecondQuarter) {
  1499. quarter3.push(currentList.firstSecondQuarter.totalQuarter);
  1500. alloneBasis.push(currentList.firstSecondQuarter.oneBasis);
  1501. }
  1502. if (currentList.firstThridQuarter) {
  1503. quarter3.push(currentList.firstThridQuarter.totalQuarter);
  1504. alloneBasis.push(currentList.firstThridQuarter.oneBasis);
  1505. }
  1506. if (currentList.firstFourQuarter) {
  1507. quarter3.push(currentList.firstFourQuarter.totalQuarter);
  1508. alloneBasis.push(currentList.firstFourQuarter.oneBasis);
  1509. }
  1510. }
  1511. }
  1512. var sourceData = [dateNum, quarter3];
  1513. return {
  1514. legend: {
  1515. textStyle:{
  1516. fontSize: 30
  1517. }
  1518. },
  1519. grid: {
  1520. left: '2%',
  1521. right: '10%',
  1522. bottom: '5%',
  1523. containLabel: true
  1524. },
  1525. dataZoom:[//x轴滑动条
  1526. {
  1527. type: 'slider',
  1528. show: true,
  1529. xAxisIndex: [0],
  1530. start: 0, //初始化时,滑动条宽度开始标度
  1531. bottom: '7%',
  1532. end: 45,
  1533. height: 2,
  1534. fillerColor:'#3E86FF',
  1535. showDataShadow: false,//是否显示数据阴影 默认auto
  1536. showDetail: false,//即拖拽时候是否显示详细数值信息 默认true
  1537. },
  1538. {
  1539. type:'inside',
  1540. xAxisIndex:0,
  1541. zoomOnMouseWheel:false, //滚轮是否触发缩放
  1542. moveOnMouseMove:true, //鼠标滚轮触发滚动
  1543. moveOnMouseWheel:true
  1544. }
  1545. ],
  1546. tooltip: {
  1547. trigger: 'item',
  1548. formatter: function (params) {
  1549. var htmlStr = '';
  1550. var color = params.color; //图例颜色
  1551. var seriesName = params.seriesName; //图例名称
  1552. var xName = params.name; //x轴的名称
  1553. var value = params.value; //y轴值
  1554. var htmlStr = '<div style="margin-right: 5px; font-size: 20pt;">';
  1555. htmlStr += seriesName + '<br/>';
  1556. htmlStr +=
  1557. '<span style="margin-right: 5px; font-size: 20pt; font-family: Consolas;display: inline-block; width: 10px; height: 10px; border-radius: 50%; background-color:' +
  1558. color + ' ;"></span>';
  1559. htmlStr += "<span style='min-height: 20pt; font-size: 17pt'>";
  1560. htmlStr += xName;
  1561. htmlStr += '</span>';
  1562. htmlStr += "<span style='min-height: 20pt; font-size: 17pt; margin-left: 20px'>";
  1563. if (!value.length) {
  1564. htmlStr += value + '%';
  1565. } else {
  1566. htmlStr += value[params.seriesIndex + 1] + unit; //选择对应value的坐标
  1567. }
  1568. htmlStr += '</span>'
  1569. htmlStr += '</div>';
  1570. return htmlStr;
  1571. }
  1572. },
  1573. dataset: {
  1574. source: sourceData
  1575. },
  1576. xAxis: [{
  1577. type: 'category',
  1578. gridIndex: 0,
  1579. axisLabel: {
  1580. formatter: '{value}',
  1581. interval: 0,
  1582. rotate: -40,
  1583. fontSize: 40
  1584. }
  1585. },
  1586. ],
  1587. yAxis: [{
  1588. gridIndex: 0,
  1589. axisLabel: {
  1590. formatter: '{value}' + unit,
  1591. fontSize: 20
  1592. }
  1593. },
  1594. {
  1595. type: 'value',
  1596. axisLabel: {
  1597. formatter: '{value}%',
  1598. fontSize: 20
  1599. }
  1600. }
  1601. ],
  1602. series: [
  1603. {
  1604. type: 'bar',
  1605. seriesLayoutBy: 'row',
  1606. itemStyle: {
  1607. normal: {
  1608. color: function (params) {
  1609. // build a color map as your need.
  1610. var colorList = [
  1611. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1612. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1613. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1614. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1615. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1616. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1617. '#93BEF9', '#6AA3F3', '#448BEE', '#2A7BED',
  1618. ];
  1619. return colorList[params.dataIndex]
  1620. },
  1621. }
  1622. },
  1623. },
  1624. {
  1625. name: '同比增减(%)',
  1626. type: 'line',
  1627. color: ['#91CC75'],
  1628. // itemStyle: {
  1629. // normal: {
  1630. // color: rgb(115,192,222)
  1631. // }
  1632. // },
  1633. yAxisIndex: 1,
  1634. data: alloneBasis,
  1635. symbolSize: 3, //一定要加这个字段才能显示
  1636. itemStyle: {
  1637. normal: {
  1638. label: {
  1639. show: true,
  1640. position: 'top',
  1641. textStyle: {
  1642. color: '#000'
  1643. },
  1644. fontSize:30
  1645. }
  1646. }
  1647. },
  1648. }
  1649. ]
  1650. }
  1651. }
  1652. }
  1653. function getLine(list, unit) {
  1654. var chart = {
  1655. tooltip: {
  1656. trigger: 'axis',
  1657. },
  1658. dataZoom:[//x轴滑动条
  1659. {
  1660. type: 'slider',
  1661. show: true,
  1662. xAxisIndex: [0],
  1663. start: 0, //初始化时,滑动条宽度开始标度
  1664. bottom: '7%',
  1665. end: 45,
  1666. height: 2,
  1667. fillerColor:'#3E86FF',
  1668. showDataShadow: false,//是否显示数据阴影 默认auto
  1669. showDetail: false,//即拖拽时候是否显示详细数值信息 默认true
  1670. },
  1671. {
  1672. type:'inside',
  1673. xAxisIndex:0,
  1674. zoomOnMouseWheel:false, //滚轮是否触发缩放
  1675. moveOnMouseMove:true, //鼠标滚轮触发滚动
  1676. moveOnMouseWheel:true
  1677. }
  1678. ],
  1679. grid: {
  1680. left: '3%',
  1681. right: '4%',
  1682. bottom: '3%',
  1683. containLabel: true
  1684. },
  1685. toolbox: {
  1686. show: true,
  1687. x: 'right',
  1688. y: 'top',
  1689. feature: {
  1690. saveAsImage: {
  1691. pixelRatio: 1,
  1692. name: '导出的文件名',
  1693. title: '保存图片',
  1694. emphasis: {
  1695. iconStyle: {
  1696. textAlign: 'right', //文字在图标在右边
  1697. textPosition: 'left', //文字与图标在一行
  1698. },
  1699. }
  1700. }
  1701. }
  1702. },
  1703. xAxis: {
  1704. type: 'category',
  1705. boundaryGap: 1,
  1706. data: list[0].xdata,
  1707. axisLabel: {
  1708. interval: 0,
  1709. rotate: 40,
  1710. fontSize: 40
  1711. }
  1712. },
  1713. yAxis: {
  1714. type: 'value',
  1715. axisLabel: {
  1716. formatter: '{value}' + unit,
  1717. fontSize: 40
  1718. }
  1719. }
  1720. };
  1721. var series = [];
  1722. var tolstr = [];
  1723. for (var i = 0; i < list.length; i++) {
  1724. series.push({
  1725. name: list[i].name,
  1726. type: 'bar',
  1727. stack: '总量',
  1728. symbol: 'none',
  1729. data: list[i].data,
  1730. itemStyle: {
  1731. normal: {
  1732. color: list[i].color1
  1733. }
  1734. },
  1735. })
  1736. tolstr.push(list[i].color1);
  1737. }
  1738. chart.series = series;
  1739. chart.tooltip.formatter = function (v) {
  1740. var str = '';
  1741. var res = "<div>" + v[0].axisValue + "</div>";
  1742. var result = ''
  1743. v.forEach(function (item, index) {
  1744. result +=
  1745. `<span style="display:inline-block;margin-right:5px;margin-bottom:2px;border-radius:10px;width:9px;height:9px;background:` +
  1746. tolstr[index] + `;"></span>`
  1747. result += item.seriesName + ":" + item.data + unit + "<br>";
  1748. })
  1749. str = res + result
  1750. return str;
  1751. }
  1752. return chart;
  1753. }
  1754. function getLinel(list, unit) {
  1755. var chart = {
  1756. tooltip: {
  1757. trigger: 'axis',
  1758. },
  1759. grid: {
  1760. left: '3%',
  1761. right: '4%',
  1762. bottom: '3%',
  1763. containLabel: true
  1764. },
  1765. toolbox: {
  1766. show: true,
  1767. x: 'right',
  1768. y: 'top',
  1769. feature: {
  1770. saveAsImage: {
  1771. pixelRatio: 1,
  1772. name: '导出的文件名',
  1773. title: '保存图片',
  1774. emphasis: {
  1775. iconStyle: {
  1776. textAlign: 'right', //文字在图标在右边
  1777. textPosition: 'left', //文字与图标在一行
  1778. },
  1779. }
  1780. }
  1781. }
  1782. },
  1783. xAxis: {
  1784. type: 'category',
  1785. boundaryGap: false,
  1786. data: list[0].xdata,
  1787. axisLabel: {
  1788. interval: 0,
  1789. rotate: 40,
  1790. fontSize: 40
  1791. }
  1792. },
  1793. yAxis: {
  1794. type: 'value',
  1795. axisLabel: {
  1796. formatter: '{value}' + unit,
  1797. fontSize: 40
  1798. }
  1799. }
  1800. };
  1801. var series = [];
  1802. var tolstr = [];
  1803. for (var i = 0; i < list.length; i++) {
  1804. series.push({
  1805. name: list[i].name,
  1806. type: 'line',
  1807. // type: 'bar',
  1808. // stack: '增速',
  1809. // symbol: 'none',
  1810. data: list[i].data,
  1811. symbolSize: 3, //一定要加这个字段才能显示
  1812. itemStyle: {
  1813. normal: {
  1814. color: list[i].color1,
  1815. label: {
  1816. show: true,
  1817. position: 'top',
  1818. textStyle: {
  1819. color: '#000'
  1820. }
  1821. }
  1822. }
  1823. }
  1824. })
  1825. tolstr.push(list[i].color1);
  1826. }
  1827. chart.series = series;
  1828. chart.tooltip.formatter = function (v) {
  1829. var str = '';
  1830. var res = "<div>" + v[0].axisValue + "</div>";
  1831. var result = ''
  1832. v.forEach(function (item, index) {
  1833. result +=
  1834. `<span style="display:inline-block;margin-right:5px;margin-bottom:2px;border-radius:10px;width:9px;height:9px;background:` +
  1835. tolstr[index] + `;"></span>`
  1836. result += item.seriesName + ":" + item.data + unit + "<br>";
  1837. })
  1838. str = res + result
  1839. return str;
  1840. }
  1841. return chart;
  1842. }
  1843. function getAllLine(list) {
  1844. var dateList = [];
  1845. var listThri = [];
  1846. for (var i = 0; i < list.length; i++) {
  1847. dateList.push(list[i].date);
  1848. listThri.push(list[i].totalNum[3]);
  1849. }
  1850. return {
  1851. grid: {
  1852. left: '3%',
  1853. right: '4%',
  1854. bottom: '3%',
  1855. containLabel: true
  1856. },
  1857. toolbox: {
  1858. show: true,
  1859. x: 'right',
  1860. y: 'top',
  1861. feature: {
  1862. saveAsImage: {
  1863. pixelRatio: 1,
  1864. name: '导出的文件名',
  1865. title: '保存图片',
  1866. emphasis: {
  1867. iconStyle: {
  1868. textAlign: 'right', //文字在图标在右边
  1869. textPosition: 'left', //文字与图标在一行
  1870. },
  1871. }
  1872. }
  1873. }
  1874. },
  1875. xAxis: {
  1876. type: 'category',
  1877. boundaryGap: 1,
  1878. data: dateList
  1879. },
  1880. yAxis: {
  1881. type: 'value'
  1882. },
  1883. series: [{
  1884. name: '视频广告',
  1885. type: 'bar',
  1886. stack: '总量',
  1887. symbol: 'none',
  1888. data: listThri,
  1889. lineStyle: {
  1890. normal: {
  1891. width: 4,
  1892. color: {
  1893. type: 'linear',
  1894. colorStops: [{
  1895. offset: 0,
  1896. color: '#0090f4'
  1897. }, {
  1898. offset: 1,
  1899. color: '#5efff5'
  1900. }],
  1901. globalCoord: false
  1902. },
  1903. }
  1904. },
  1905. }
  1906. ]
  1907. }
  1908. }
  1909. //时间
  1910. var t = null;
  1911. t = setTimeout(time, 1000); //開始运行
  1912. function time() {
  1913. clearTimeout(t); //清除定时器
  1914. dt = new Date();
  1915. var y = dt.getFullYear();
  1916. var mt = showDateNum(dt.getMonth() + 1);
  1917. var day = showDateNum(dt.getDate());
  1918. var mon = showMonNum(dt.getDay()); //获取星期
  1919. var h = showDateNum(dt.getHours()); //获取时;
  1920. var m = showDateNum(dt.getMinutes()); //获取分
  1921. var s = showDateNum(dt.getSeconds()); //获取秒
  1922. document.querySelector(".timeDeatil").innerHTML = h + ':' + m + ':' + s;
  1923. document.querySelector(".dateMon").innerHTML = mon;
  1924. document.querySelector(".dateDeatil").innerHTML = y + '-' + mt + '-' + day;
  1925. t = setTimeout(time, 1000); //设定定时器,循环运行
  1926. }
  1927. //处理日期数字
  1928. function showDateNum(num) {
  1929. if (num < 10) {
  1930. return '0' + num
  1931. }
  1932. return num
  1933. }
  1934. //处理星期
  1935. function showMonNum(num) {
  1936. switch (num) {
  1937. case 1:
  1938. num = '星期一';
  1939. break;
  1940. case 2:
  1941. num = '星期二';
  1942. break;
  1943. case 3:
  1944. num = '星期三';
  1945. break;
  1946. case 4:
  1947. num = '星期四';
  1948. break;
  1949. case 5:
  1950. num = '星期五';
  1951. break;
  1952. case 6:
  1953. num = '星期六';
  1954. break;
  1955. case 0:
  1956. num = '星期日';
  1957. break;
  1958. }
  1959. return num
  1960. }
  1961. //阿拉伯数字转中文数字
  1962. function NoToChinese(num) {
  1963. if (!/^\d*(\.\d*)?$/.test(num)) {
  1964. alert("Number is wrong!");
  1965. return "Number is wrong!";
  1966. }
  1967. var AA = new Array("零", "一", "二", "三", "四", "五", "六", "七", "八", "九");
  1968. var BB = new Array("", "十", "百", "千", "万", "亿", "点", "");
  1969. var a = ("" + num).replace(/(^0*)/g, "").split("."),
  1970. k = 0,
  1971. re = "";
  1972. for (var i = a[0].length - 1; i >= 0; i--) {
  1973. switch (k) {
  1974. case 0:
  1975. re = BB[7] + re;
  1976. break;
  1977. case 4:
  1978. if (!new RegExp("0{4}\\d{" + (a[0].length - i - 1) + "}$").test(a[0]))
  1979. re = BB[4] + re;
  1980. break;
  1981. case 8:
  1982. re = BB[5] + re;
  1983. BB[7] = BB[5];
  1984. k = 0;
  1985. break;
  1986. }
  1987. if (k % 4 == 2 && a[0].charAt(i + 2) != 0 && a[0].charAt(i + 1) == 0) re = AA[0] + re;
  1988. if (a[0].charAt(i) != 0) re = AA[a[0].charAt(i)] + BB[k % 4] + re;
  1989. k++;
  1990. }
  1991. if (a.length > 1) //加上小数部分(如果有小数部分)
  1992. {
  1993. re += BB[6];
  1994. for (var i = 0; i < a[1].length; i++) re += AA[a[1].charAt(i)];
  1995. }
  1996. return re;
  1997. };