line-chart.html 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>折线图区域</title>
  6. <meta name="author" content="yihu.com" />
  7. <meta name="format-detection" content="telephone=no" />
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0" />
  9. <meta name="apple-mobile-web-app-capable" content="yes" />
  10. <meta name="apple-mobile-web-app-status-bar-style" content="black" />
  11. <link rel="stylesheet" type="text/css" href="../../css/font-awesome.min.css"/>
  12. <link rel="stylesheet" type="text/css" href="../../css/style.min.css"/>
  13. <link rel="stylesheet" type="text/css" href="../../css/cross.css"/>
  14. <link rel="stylesheet" type="text/css" href="css/common.css"/>
  15. </head>
  16. <body>
  17. <div id="main">
  18. <line-chart :panelName="panelName" :quotaNames="quotaNames" :xData="xData" :yDatas="yDatas" :colors="colors"></line-chart>
  19. </div>
  20. <script src="../../js/vue.js" type="text/javascript" charset="utf-8"></script>
  21. <script src="../../js/jquery-2.2.4.js" type="text/javascript" charset="utf-8"></script>
  22. <script src="../../js/es6-promise.js" type="text/javascript" charset="utf-8"></script>
  23. <script src="../../js/underscore.js" type="text/javascript" charset="utf-8"></script>
  24. <script src="../../plugins/echarts/3.8.5/echarts.min.js" type="text/javascript" charset="utf-8"></script>
  25. <script src="../../api/http-request.js" type="text/javascript" charset="utf-8"></script>
  26. <script src="../../api/statistics-api.js" type="text/javascript" charset="utf-8"></script>
  27. <script src="../../component/common/event-bus.js"></script>
  28. <script src="../../component/statistics/line-chart.js" type="text/javascript" charset="utf-8"></script>
  29. <script type="text/javascript">
  30. (function(){
  31. new Vue({
  32. el: '#main',
  33. data:{
  34. panelName: '',
  35. quotaNames: [],
  36. xData: [],
  37. yDatas: [],
  38. colors: [],
  39. requestParam: {
  40. index: 3,
  41. level: 4,
  42. area: '350200',
  43. startDate: '2017-12-01',
  44. endDate: '2018-03-08',
  45. interval: 1
  46. }
  47. },
  48. mounted: function(){
  49. var vm = this;
  50. EventBus.$on("get-line-chart-data", function(arg){
  51. vm.requestParam.interval = arg.dateType;
  52. getLineData(vm);
  53. });
  54. getLineData(vm);
  55. }
  56. });
  57. function getLineData(vm){
  58. statisticAPI.interval(vm.requestParam).then(function(res){
  59. console.log(res);
  60. var xDatas = [],
  61. yDatas = [],
  62. names = [],
  63. colors = ['#12b7f5', '#cd67fd'],
  64. data = res.data;
  65. for(var p in data){
  66. names.push('咨询量');
  67. if(p == 'index_21' || p == 'index_20'){
  68. var xData = _.map(data[p].data, function(o){
  69. return o.range;
  70. });
  71. var yData = _.map(data[p].data, function(o){
  72. return o.amount;
  73. });
  74. }else{
  75. var xData = _.map(data[p], function(o){
  76. return o.range;
  77. });
  78. var yData = _.map(data[p], function(o){
  79. return o.amount;
  80. });
  81. }
  82. xDatas.push(xData);
  83. yDatas.push(yData);
  84. }
  85. vm.panelName = "咨询量新增趋势";
  86. vm.quotaNames = names;
  87. vm.xData = xDatas[0];
  88. vm.yDatas = yDatas;
  89. vm.colors = colors;
  90. EventBus.$emit("draw-line-chart", {
  91. panelName : "咨询量新增趋势",
  92. quotaNames : names,
  93. xData : xDatas[0],
  94. yDatas : yDatas,
  95. colors : colors
  96. });
  97. })
  98. }
  99. })()
  100. </script>
  101. </body>
  102. </html>