From 13e21b46aa0a340737b918a65b381641dcf0b396 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Tue, 24 Jul 2018 13:59:19 +0800
Subject: [PATCH] 统计分析  对比图效果

---
 src/app/routes/statistics/analysis/analysis.component.ts |   92 +++++++++++++++++++++++++++++++---------------
 1 files changed, 62 insertions(+), 30 deletions(-)

diff --git a/src/app/routes/statistics/analysis/analysis.component.ts b/src/app/routes/statistics/analysis/analysis.component.ts
index 7f20f09..3b9e0fa 100644
--- a/src/app/routes/statistics/analysis/analysis.component.ts
+++ b/src/app/routes/statistics/analysis/analysis.component.ts
@@ -5,6 +5,7 @@
 import { HttpClient } from '@angular/common/http';
 import * as moment from 'moment';
 import { DeviceService } from '@business/services/http/device.service';
+import * as echarts from 'echarts';
 
 @Component({
     selector: 'statistics-analysis',
@@ -23,39 +24,70 @@
         public msg: NzMessageService,
         private http2: HttpClient) {
     }
+    
+    public option = {
+      title: {
+        text: '',
+        left: 'center'
+      },
+      tooltip: {
+        trigger: 'item',
+        axisPointer: {
+          type: 'cross'
+        }
+      },
+      legend: {
+        right: '10%',
+        top: '10%',
+        data: ['������������', '������������']
+      },
+      xAxis: {
+        type: 'category',
+        data: []
+      },
+      yAxis: {
+        type: 'value',
+        name: '���������ug/m��'
+      },
+      series: [
+        {
+          data: [],
+          type: 'line',
+          smooth: true,
+          name: '������������'
+        }, {
+          data: [],
+          type: 'line',
+          smooth: true,
+          name: '������������'
+        }
+      ]
+    };
 
     ngOnInit() {
-        const offlineChartData1 = [];
-        const offlineChartData2 = [];
-        const params = {size: '24'};
-        this.http2.get(environment.SERVER_BASH_URL + 'demo/compare', {params: params}).subscribe((res: any) => {
-          res.forEach(data => {
-            offlineChartData1.push({
-              x: data.time,
-              y1: data.this_month_PM2_5,
-              y2: data.last_month_PM2_5
-            });
-            offlineChartData2.push({
-              x: data.time,
-              y1: data.this_month_PM10,
-              y2: data.last_month_PM10
-            });
-          });
+      const offlineChartData = [[], [], [], []];
+      const params = {size: '24'};
+      this.http2.get(environment.SERVER_BASH_URL + 'demo/compare', {params: params}).subscribe((res: any) => {
+        res.forEach(data => {
+          offlineChartData[0].push(data.this_month_PM2_5);
+          offlineChartData[1].push(data.last_month_PM2_5);
+          offlineChartData[2].push(data.this_month_PM10);
+          offlineChartData[3].push(data.last_month_PM2_5);
+          this.option.xAxis.data.push(data.format_time);
         });
-//        for (let i = 0; i < 20; i += 1) {
-//            offlineChartData1.push({
-//                x: new Date().getTime() + 1000 * 60 * 30 * i,
-//                y1: Math.floor(Math.random() * 100) + 10,
-//                y2: Math.floor(Math.random() * 100) + 10
-//            });
-//            offlineChartData2.push({
-//                x: new Date().getTime() + 1000 * 60 * 30 * i,
-//                y1: Math.floor(Math.random() * 100) + 10,
-//                y2: Math.floor(Math.random() * 100) + 10
-//            });
-//        }
-        this.offlineChartData1 = offlineChartData1;
-        this.offlineChartData2 = offlineChartData2;
+
+        const PM25 = echarts.init(document.getElementById('PM25'));
+        this.option.series[0].data = offlineChartData[0];
+        this.option.series[1].data = offlineChartData[1];
+        PM25.setOption(this.option, false);
+        window.onresize = PM25.resize;
+
+        const PM10 = echarts.init(document.getElementById('PM10'));
+        this.option.series[0].data = offlineChartData[2];
+        this.option.series[1].data = offlineChartData[3];
+        PM10.setOption(this.option, false);
+        window.onresize = PM10.resize;
+      });
     }
 
     ngOnDestroy(): void {

--
Gitblit v1.8.0