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