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.html | 6 ++-
src/app/routes/statistics/analysis/analysis.component.ts | 92 +++++++++++++++++++++++++++++++---------------
2 files changed, 66 insertions(+), 32 deletions(-)
diff --git a/src/app/routes/statistics/analysis/analysis.component.html b/src/app/routes/statistics/analysis/analysis.component.html
index 64c7695..f863b3f 100644
--- a/src/app/routes/statistics/analysis/analysis.component.html
+++ b/src/app/routes/statistics/analysis/analysis.component.html
@@ -23,7 +23,8 @@
������������
<span class="text-md font-weight-normal" style="color:red">PM2.5</span>
</ng-template>
- <timeline [data]="offlineChartData1" [height]="239" [padding]="[0, 0, 0, 0]" [titleMap]="{ y1: '������������', y2: '������������' }"></timeline>
+ <!-- <timeline [data]="offlineChartData1" [height]="239" [padding]="[0, 0, 0, 0]" [titleMap]="{ y1: '������������', y2: '������������' }"></timeline> -->
+ <div id="PM25" style="height: 300px; width: 100%"></div>
</nz-card>
</div>
</div>
@@ -35,7 +36,8 @@
������������
<span class="text-md font-weight-normal" style="color:red">PM10</span>
</ng-template>
- <timeline [data]="offlineChartData2" [height]="239" [padding]="[0, 0, 0, 0]" [titleMap]="{ y1: '������������', y2: '������������' }"></timeline>
+ <div id="PM10" style="height: 300px; width: 100%"></div>
+ <!-- <timeline [data]="offlineChartData2" [height]="239" [padding]="[0, 0, 0, 0]" [titleMap]="{ y1: '������������', y2: '������������' }"></timeline> -->
</nz-card>
</div>
</div>
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