index.js 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504
  1. $(function () {
  2. echart_1();
  3. echart_2();
  4. echart_3();
  5. function echart_1() {
  6. // 基于准备好的dom,初始化echarts实例
  7. var myChart = echarts.init(document.getElementById('chart_1'));
  8. var xAxisData = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12','13','14','15','16','17','18','19','20'];
  9. var legendData = ['3月', '4月'];
  10. var title = "2018年度3月,4月销售额";//标题
  11. var serieData = [];
  12. var metaDate = [
  13. [1200, 1400, 1000, 1200, 3000, 2300, 1300, 1700, 1400, 1200, 3000, 2300, 2400, 2100, 2800, 3100, 3000, 2800, 2700, 2900],
  14. [2000, 1200, 3000, 2000, 1700, 3000, 2000, 1800, 2000, 1900, 3000, 2000, 2500, 2200, 2600, 2700, 2900, 3000, 3200, 3100]
  15. ]
  16. for (var v = 0; v < legendData.length; v++) {
  17. var serie = {
  18. name: legendData[v],
  19. type: 'line',
  20. symbol: "circle",
  21. symbolSize: 10,
  22. data: metaDate[v]
  23. };
  24. serieData.push(serie);
  25. }
  26. var colors = ["#036BC8", "#FFF", "#5EBEFC", "#2EF7F3"];
  27. var option = {
  28. // backgroundColor: '#0f375f',
  29. title: {
  30. text: title,
  31. textAlign: 'left',
  32. textStyle: {
  33. color: "#fff",
  34. fontSize: "12",
  35. fontWeight: "bold"
  36. }
  37. },
  38. legend: {
  39. show: true,
  40. left: "center",
  41. data: legendData,
  42. y: "5%",
  43. itemWidth: 18,
  44. itemHeight: 12,
  45. textStyle: {
  46. color: "#fff",
  47. fontSize: 14
  48. },
  49. },
  50. toolbox: {
  51. orient: 'vertical',
  52. right: '1%',
  53. top: '20%',
  54. iconStyle: {
  55. color: '#fff',
  56. borderColor: '#fff',
  57. borderWidth: 1,
  58. },
  59. feature: {
  60. saveAsImage: {},
  61. magicType: {
  62. // show: true,
  63. type: ['line','bar','stack','tiled']
  64. }
  65. }
  66. },
  67. color: colors,
  68. grid: {
  69. left: '2%',
  70. top: "12%",
  71. bottom: "5%",
  72. right: "5%",
  73. containLabel: true
  74. },
  75. tooltip: {
  76. trigger: 'axis',
  77. axisPointer: {
  78. type: 'shadow'
  79. },
  80. },
  81. xAxis: [{
  82. type: 'category',
  83. axisLine: {
  84. show: true,
  85. lineStyle: {
  86. color: '#6173A3'
  87. }
  88. },
  89. axisLabel: {
  90. interval: 0,
  91. textStyle: {
  92. color: '#9ea7c4',
  93. fontSize: 12
  94. }
  95. },
  96. axisTick: {
  97. show: false
  98. },
  99. data: xAxisData,
  100. }, ],
  101. yAxis: [{
  102. axisTick: {
  103. show: false
  104. },
  105. splitLine: {
  106. show: false
  107. },
  108. axisLabel: {
  109. textStyle: {
  110. color: '#9ea7c4',
  111. fontSize: 12
  112. }
  113. },
  114. axisLine: {
  115. show: true,
  116. lineStyle: {
  117. color: '#6173A3'
  118. }
  119. },
  120. }, ],
  121. series: serieData
  122. };
  123. // 使用刚指定的配置项和数据显示图表。
  124. myChart.setOption(option);
  125. window.addEventListener("resize", function () {
  126. myChart.resize();
  127. });
  128. }
  129. function echart_2() {
  130. // 基于准备好的dom,初始化echarts实例
  131. var myChart = echarts.init(document.getElementById('chart_2'));
  132. var giftImageUrl = "data:image/png;base64,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";
  133. myChart.setOption({
  134. graphic: {
  135. elements: [{
  136. type: 'image',
  137. style: {
  138. image: giftImageUrl,
  139. width: 30,
  140. height: 30
  141. },
  142. left: '73%',
  143. top: 'center'
  144. }]
  145. },
  146. tooltip: {
  147. trigger: 'axis',
  148. axisPointer: {
  149. type: 'shadow'
  150. }
  151. },
  152. legend: {
  153. data: ['销售额'],
  154. left:'27%'
  155. },
  156. grid: {
  157. left: '1%',
  158. right: '60%',
  159. top: '10%',
  160. bottom: '10%',
  161. containLabel: true,
  162. },
  163. xAxis: {
  164. type: 'value',
  165. position:'top',
  166. splitLine: {show: false},
  167. boundaryGap: [0, 0.01],
  168. axisTick: {
  169. show: false
  170. },
  171. axisLabel: {
  172. textStyle: {
  173. color: '#9ea7c4',
  174. fontSize: 12
  175. }
  176. },
  177. axisLine: {
  178. show: true,
  179. lineStyle: {
  180. color: '#6173A3'
  181. }
  182. },
  183. },
  184. yAxis: {
  185. type: 'category',
  186. data: ['茶几','床头柜','斗柜','大床','电视柜'],
  187. axisTick: {
  188. show: false
  189. },
  190. splitLine: {
  191. show: false
  192. },
  193. axisLabel: {
  194. textStyle: {
  195. color: '#9ea7c4',
  196. fontSize: 12
  197. }
  198. },
  199. axisLine: {
  200. show: true,
  201. lineStyle: {
  202. color: '#6173A3'
  203. }
  204. },
  205. },
  206. series: [{
  207. name: '',
  208. itemStyle: {
  209. normal: {
  210. color: function(params) {
  211. // build a color map as your need.
  212. var colorList = [
  213. '#C1232B','#B5C334','#FCCE10','#E87C25','#27727B',
  214. '#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD',
  215. '#D7504B','#C6E579','#F4E001','#F0805A','#26C0C0'
  216. ];
  217. return colorList[params.dataIndex]
  218. },
  219. shadowBlur: 20,
  220. shadowColor: 'rgba(0, 0, 0, 0.5)'
  221. }
  222. },
  223. type: 'bar',
  224. data: [260,210,190,170,170]
  225. },{
  226. type: 'pie',
  227. radius: [30, '80%'],
  228. center: ['75%', '50%'],
  229. roseType: 'radius',
  230. color: [ '#C1232B','#B5C334','#FCCE10','#E87C25','#27727B',
  231. '#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD',
  232. '#D7504B','#C6E579','#F4E001','#F0805A','#26C0C0'],
  233. data: [{
  234. value: 26,
  235. name: '茶几'
  236. }, {
  237. value: 21,
  238. name: '床头柜'
  239. }, {
  240. value: 19,
  241. name: '斗柜'
  242. }, {
  243. value: 17,
  244. name: '大床'
  245. }, {
  246. value: 17,
  247. name: '电视柜'
  248. }],
  249. label: {
  250. normal: {
  251. textStyle: {
  252. fontSize: 14
  253. },
  254. formatter: function(param) {
  255. return param.name + ':\n' + Math.round(param.percent) + '%';
  256. }
  257. }
  258. },
  259. labelLine: {
  260. normal: {
  261. smooth: true,
  262. lineStyle: {
  263. width: 2
  264. }
  265. }
  266. },
  267. itemStyle: {
  268. normal: {
  269. shadowBlur: 30,
  270. shadowColor: 'rgba(0, 0, 0, 0.4)'
  271. }
  272. },
  273. animationType: 'scale',
  274. animationEasing: 'elasticOut',
  275. animationDelay: function(idx) {
  276. return Math.random() * 200;
  277. }
  278. }]
  279. });
  280. }
  281. function echart_3() {
  282. // 基于准备好的dom,初始化echarts实例
  283. var myChart = echarts.init(document.getElementById('chart_3'));
  284. option = {
  285. // backgroundColor: "#404A59",
  286. color: ["#036BC8", "#5EBEFC", "#2EF7F3"],
  287. title: [{
  288. text: '',
  289. left: '1%',
  290. top: '6%',
  291. textStyle: {
  292. color: '#fff'
  293. }
  294. }, {
  295. text: '',
  296. left: '83%',
  297. top: '6%',
  298. textAlign: 'center',
  299. textStyle: {
  300. color: '#fff',
  301. fontSize: 16
  302. }
  303. }],
  304. tooltip: {
  305. trigger: 'axis'
  306. },
  307. legend: {
  308. x: 300,
  309. top: '7%',
  310. textStyle: {
  311. color: '#ffd285',
  312. },
  313. data: ['2016年', '2017年', '2018年']
  314. },
  315. grid: {
  316. left: '1%',
  317. right: '28%',
  318. top: '16%',
  319. bottom: '6%',
  320. containLabel: true
  321. },
  322. toolbox: {
  323. "show": false,
  324. feature: {
  325. saveAsImage: {}
  326. }
  327. },
  328. xAxis: {
  329. type: 'category',
  330. "axisLine": {
  331. lineStyle: {
  332. color: '#fff'
  333. }
  334. },
  335. "axisTick": {
  336. "show": false
  337. },
  338. axisLabel: {
  339. textStyle: {
  340. color: '#fff'
  341. }
  342. },
  343. boundaryGap: false,
  344. data: ['1', '2', '3', '4', '5', '6', '7','8','9','10','11','12']
  345. },
  346. yAxis: {
  347. "axisLine": {
  348. lineStyle: {
  349. color: '#fff'
  350. }
  351. },
  352. splitLine: {
  353. show: false,
  354. lineStyle: {
  355. color: '#fff'
  356. }
  357. },
  358. "axisTick": {
  359. "show": false
  360. },
  361. axisLabel: {
  362. textStyle: {
  363. color: '#fff'
  364. }
  365. },
  366. type: 'value'
  367. },
  368. series: [{
  369. name: '',
  370. smooth: true,
  371. type: 'line',
  372. symbolSize: 9,
  373. symbol: 'circle',
  374. data: [90, 50, 39, 50, 120, 82, 80, 89, 92, 80, 102, 77]
  375. }, {
  376. name: '',
  377. smooth: true,
  378. type: 'line',
  379. symbolSize: 9,
  380. symbol: 'circle',
  381. data: [70, 50, 50, 87, 90, 80, 70, 77, 86, 94, 96, 99]
  382. }, {
  383. name: '',
  384. smooth: true,
  385. type: 'line',
  386. symbolSize: 9,
  387. symbol: 'circle',
  388. data: [100, 112, 80, 132, 60, 70, 90, 131, 121, 102, 95, 105 ]
  389. },
  390. {
  391. type: 'pie',
  392. center: ['83%', '33%'],
  393. radius: ['30%', '35%'],
  394. label: {
  395. normal: {
  396. position: 'center'
  397. }
  398. },
  399. data: [{
  400. value: 335,
  401. name: '销售分析',
  402. itemStyle: {
  403. normal: {
  404. color: '#FF7E45'
  405. }
  406. },
  407. label: {
  408. normal: {
  409. formatter: '{d} %',
  410. textStyle: {
  411. color: '#ffd285',
  412. fontSize: 14
  413. }
  414. }
  415. }
  416. }, {
  417. value: 180,
  418. name: '占位',
  419. tooltip: {
  420. show: false
  421. },
  422. itemStyle: {
  423. normal: {
  424. color: '#fff'
  425. }
  426. },
  427. label: {
  428. normal: {
  429. textStyle: {
  430. color: '#ffd285',
  431. },
  432. formatter: '\n销售渠道'
  433. }
  434. }
  435. }]
  436. },
  437. {
  438. type: 'pie',
  439. center: ['83%', '72%'],
  440. radius: ['30%', '35%'],
  441. label: {
  442. normal: {
  443. position: 'center'
  444. }
  445. },
  446. data: [{
  447. value: 435,
  448. name: '销售分析',
  449. itemStyle: {
  450. normal: {
  451. color: '#4834CB'
  452. }
  453. },
  454. label: {
  455. normal: {
  456. formatter: '{d} %',
  457. textStyle: {
  458. color: '#fff',
  459. fontSize: 14
  460. }
  461. }
  462. }
  463. }, {
  464. value: 100,
  465. name: '占位',
  466. tooltip: {
  467. show: false
  468. },
  469. itemStyle: {
  470. normal: {
  471. color: '#fff'
  472. }
  473. },
  474. label: {
  475. normal: {
  476. textStyle: {
  477. color: '#fff',
  478. },
  479. formatter: '\n销售方向'
  480. }
  481. }
  482. }]
  483. }]
  484. }
  485. // 使用刚指定的配置项和数据显示图表。
  486. myChart.setOption(option);
  487. window.addEventListener("resize", function () {
  488. myChart.resize();
  489. });
  490. }
  491. });