From 09d3ca7105f30e5b783438595970d38a357f0659 Mon Sep 17 00:00:00 2001 From: Nico Melone Date: Tue, 25 Feb 2020 16:48:12 -0600 Subject: [PATCH] Switched from D3 to Chartjs added icons --- package-lock.json | 35 ++++++- package.json | 1 + src/app/auth/profile/profile.component.ts | 2 +- src/app/configs/configs.component.ts | 4 +- src/app/home/home.component.html | 34 +++--- src/app/home/home.component.scss | 10 +- src/app/home/home.component.ts | 121 +++++++++------------- src/assets/icons/icon-128x128.png | Bin 1253 -> 2743 bytes src/assets/icons/icon-144x144.png | Bin 1394 -> 2984 bytes src/assets/icons/icon-152x152.png | Bin 1427 -> 3111 bytes src/assets/icons/icon-192x192.png | Bin 1790 -> 3859 bytes src/assets/icons/icon-384x384.png | Bin 3557 -> 7279 bytes src/assets/icons/icon-512x512.png | Bin 5008 -> 9498 bytes src/assets/icons/icon-72x72.png | Bin 792 -> 1739 bytes src/assets/icons/icon-96x96.png | Bin 958 -> 2248 bytes src/favicon.ico | Bin 5430 -> 3230 bytes 16 files changed, 112 insertions(+), 95 deletions(-) diff --git a/package-lock.json b/package-lock.json index 30af75e..99b1f6d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4626,6 +4626,32 @@ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, + "chart.js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-2.9.3.tgz", + "integrity": "sha512-+2jlOobSk52c1VU6fzkh3UwqHMdSlgH1xFv9FKMqHiNCpXsGPQa/+81AFa+i3jZ253Mq9aAycPwDjnn1XbRNNw==", + "requires": { + "chartjs-color": "^2.1.0", + "moment": "^2.10.2" + } + }, + "chartjs-color": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chartjs-color/-/chartjs-color-2.4.1.tgz", + "integrity": "sha512-haqOg1+Yebys/Ts/9bLo/BqUcONQOdr/hoEr2LLTRl6C5LXctUdHxsCYfvQVg5JIxITrfCNUDr4ntqmQk9+/0w==", + "requires": { + "chartjs-color-string": "^0.6.0", + "color-convert": "^1.9.3" + } + }, + "chartjs-color-string": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/chartjs-color-string/-/chartjs-color-string-0.6.0.tgz", + "integrity": "sha512-TIB5OKn1hPJvO7JcteW4WY/63v6KwEdt6udfnDE9iCAZgy+V4SrbSxoIbTw/xkUIapjEI4ExGtD0+6D3KyFd7A==", + "requires": { + "color-name": "^1.0.0" + } + }, "chokidar": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", @@ -4859,7 +4885,6 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, "requires": { "color-name": "1.1.3" } @@ -4867,8 +4892,7 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "color-string": { "version": "1.5.3", @@ -10012,6 +10036,11 @@ } } }, + "moment": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", + "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==" + }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", diff --git a/package.json b/package.json index 02576d8..d261b3b 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "@angular/router": "~9.0.0", "@angular/service-worker": "~9.0.0", "aws-amplify": "^1.2.2", + "chart.js": "^2.9.3", "d3": "^5.15.0", "rxjs": "~6.5.4", "tslib": "^1.10.0", diff --git a/src/app/auth/profile/profile.component.ts b/src/app/auth/profile/profile.component.ts index 5ed4550..72ec5c4 100644 --- a/src/app/auth/profile/profile.component.ts +++ b/src/app/auth/profile/profile.component.ts @@ -46,7 +46,7 @@ export class ProfileComponent implements OnInit { async getUserInfo() { this.profile = await Auth.currentUserInfo(); this.user = await Auth.currentAuthenticatedUser(); - console.log(this.profile); + // console.log(this.profile); if ( this.profile.attributes.profile ) { this.avatar = this.profile.attributes.profile; this.currentAvatarUrl = await Storage.vault.get(this.avatar) as string; diff --git a/src/app/configs/configs.component.ts b/src/app/configs/configs.component.ts index 684f7a1..8fa7c2e 100644 --- a/src/app/configs/configs.component.ts +++ b/src/app/configs/configs.component.ts @@ -43,7 +43,7 @@ export class ConfigsComponent implements OnInit { certList.subscribe( data => { this.options = data as string[]; - console.log(data); + // console.log(data); this.filteredOptions = this.certificateIDInput.valueChanges.pipe( startWith(''), map(value => this._filter(value)) @@ -67,7 +67,7 @@ export class ConfigsComponent implements OnInit { } buildForms() { const numberOfDevices = Object.keys(this.configDownloaded).length - 2; - console.log(numberOfDevices); + // console.log(numberOfDevices); this.devicesArray.clear(); for (let i = this.devicesArray.length; i < numberOfDevices; i++) { this.devicesArray.push(this.builder.group({ diff --git a/src/app/home/home.component.html b/src/app/home/home.component.html index be0b71a..f20cd67 100644 --- a/src/app/home/home.component.html +++ b/src/app/home/home.component.html @@ -1,21 +1,19 @@ -
-
-
- Total Flow Rate {{ totalFlowRate }} +
+
+ Total Flow Rate {{ totalFlowRate }} -
+
- - - - - - - -
-

{{ title }}

- -
+ + + + + + +
+
+
+ diff --git a/src/app/home/home.component.scss b/src/app/home/home.component.scss index 30c3056..2329e3f 100644 --- a/src/app/home/home.component.scss +++ b/src/app/home/home.component.scss @@ -2,11 +2,15 @@ width: 250px; } .container { - display: flex; + display: inline-block; width: fit-content; height: fit-content; padding: 15px; } +.viewer { + width: 100%; + height: 100%; +} .flex-spacer { flex-grow: 1; } @@ -21,3 +25,7 @@ table { th.mat-sort-header-sorted { color: black; } + +#charts { + display: flexbox; +} diff --git a/src/app/home/home.component.ts b/src/app/home/home.component.ts index 22d8972..93b1964 100644 --- a/src/app/home/home.component.ts +++ b/src/app/home/home.component.ts @@ -4,11 +4,7 @@ import Auth from '@aws-amplify/auth'; import { MatTableDataSource } from '@angular/material/table'; import { MatSort } from '@angular/material/sort'; -import * as d3 from 'd3-selection'; -import * as d3Scale from 'd3-scale'; -import * as d3Array from 'd3-array'; -import * as d3Axis from 'd3-axis'; -import * as d3Color from 'd3-scale-chromatic'; +import { Chart } from 'chart.js'; export interface MyJSON { @@ -55,20 +51,42 @@ export class HomeComponent implements OnInit, OnDestroy { private token: string; title = 'Bar Chart'; - private width: number; - private height: number; - private margin = {top: 20, right: 20, bottom: 30, left: 40}; - colorScale: any; - - private x: any; - private y: any; - private svg: any; - private g: any; + charts = new Array(); @ViewChild(MatSort, {static: true}) sort: MatSort; ngOnInit() { - this.initSvg(); + const chart = document.createElement('CANVAS'); + chart.id = 'myChart'; + chart.style.width = '100%'; + chart.style.height = '500px'; + document.getElementById('charts').appendChild(chart); + const chart1 = document.createElement('canvas'); + chart1.id = 'yourChart'; + chart1.style.width = '100%'; + chart1.style.height = '400px'; + document.getElementById('charts').appendChild(chart1); + + this.charts.push(new Chart(document.getElementById('myChart'), { + type: 'bar', + data: { + labels: [], + datasets: [{ + label: '', + data: [] + }] + } + })); + this.charts.push(new Chart(document.getElementById('yourChart'), { + type: 'line', + data: { + labels: [], + datasets: [{ + label: '', + data: [] + }] + } + })); } ngOnDestroy() { @@ -89,7 +107,7 @@ export class HomeComponent implements OnInit, OnDestroy { subscribeWS() { this.socket$.subscribe((message) => { - console.log(message); + // console.log(message); if (message instanceof Array) { message.forEach(element => { this.updateList(element); @@ -100,22 +118,21 @@ export class HomeComponent implements OnInit, OnDestroy { this.totalFlowRate = this.totalFlowRates(); // console.log(this.serverMessages); this.serverMessages.sort((a, b) => a.location.localeCompare(b.location)); - this.g - .append('g') - .attr('transform', 'translate(0,' + this.height + ')') - .attr('class', 'x-axis') - .call(d3Axis.axisBottom(this.x)); - - // add the y Axis - this.g - .append('g') - .attr('transform', 'translate(0, 0 )') - .attr('class', 'y-axis') - .call(d3Axis.axisLeft(this.y)); - this.drawAxis(); + this.charts.forEach(element => { + element.data.labels = this.serverMessages.map((d) => d.location); + element.data.datasets.forEach( dataset => { + dataset.label = 'Volume Flow'; + dataset.data = this.serverMessages.map( d => d.volumeflow); + dataset.backgroundColor = dataset.data.map((item, index) => 'rgba(' + + index * (255 / this.serverMessages.length) + ',' + + 0 + ',' + + (this.serverMessages.length - index) * (255 / this.serverMessages.length) + ',' + '0.8)'); + }); + element.update(); + }); }, (err) => console.error(err), - () => console.warn('Completed!') + () => console.warn('Complete: Websocket closed') ); } @@ -126,29 +143,25 @@ export class HomeComponent implements OnInit, OnDestroy { try { obj.volumeflow = Number(obj.volumeflow.toFixed(2)); } catch { - console.log('can transform to fixed decimal data missing or not a number'); + // console.log('can transform to fixed decimal data missing or not a number'); } try { obj.current = Number(obj.current.toFixed(2)); } catch { - console.log('can transform to fixed decimal data missing or not a number'); + // console.log('can transform to fixed decimal data missing or not a number'); } try { obj.intakepressure = Number(obj.intakepressure.toFixed(2)); } catch { - console.log('can transform to fixed decimal data missing or not a number'); + // console.log('can transform to fixed decimal data missing or not a number'); } try { obj.frequency = Number(obj.frequency.toFixed(2)); } catch { - console.log('can transform to fixed decimal data missing or not a number'); + // console.log('can transform to fixed decimal data missing or not a number'); } if (index === -1) { - this.svg - .selectAll('.bar') - .remove() - .exit(); this.serverMessages.push(obj); } else { @@ -182,41 +195,9 @@ export class HomeComponent implements OnInit, OnDestroy { this.currentRole = this.roles[index]; this.socket$.complete(); this.serverMessages = []; - this.drawAxis(); this.connect(); } - private initSvg() { - this.svg = d3.select('svg'); - this.width = +this.svg.attr('width') - this.margin.left - this.margin.right; - this.height = +this.svg.attr('height') - this.margin.top - this.margin.bottom; - this.g = this.svg.append('g') - .attr('transform', 'translate(' + this.margin.left + ',' + this.margin.top + ')'); - this.x = d3Scale.scaleBand().rangeRound([0, this.width]).padding(0.1); - this.y = d3Scale.scaleLinear().rangeRound([this.height, 0]); - this.colorScale = d3Scale.scaleOrdinal(d3Color.schemeCategory10); - } - - private drawAxis() { - this.x.domain(this.serverMessages.map((d) => d.location)); - this.y.domain([0, d3Array.max(this.serverMessages, d => d.volumeflow)]).ticks(10); - this.colorScale.domain(this.serverMessages.map(d => d.location)); - this.g - .selectAll('.bar,.tick') - .remove() - .exit() - .data(this.serverMessages) - .enter() - .append('rect') - .attr('class', 'bar') - .attr('x', d => this.x(d.location)) - .attr('width', this.x.bandwidth()) - .attr('y', d => this.y(d.volumeflow)) - .attr('height', d => this.height - this.y(d.volumeflow)) - .attr('fill', d => this.colorScale(d.location)); - this.g.select('.x-axis').call(d3Axis.axisBottom(this.x)); - this.g.select('.y-axis').call(d3Axis.axisLeft(this.y)); - } } diff --git a/src/assets/icons/icon-128x128.png b/src/assets/icons/icon-128x128.png index 9f9241f0be40661db1eed29384231e76d33b6e7c..bf60b767459710a96c7cb90065abbf33a3c5c67a 100644 GIT binary patch literal 2743 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 delta 1420 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 BJ}CeI literal 1790 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 literal 3557 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 diff --git a/src/assets/icons/icon-512x512.png b/src/assets/icons/icon-512x512.png index 51ee297df1cbeb0354814ffe95afa6e4bc86ea23..ee16098a5a4cc218efd6f91d0b09ef439b9d2bb2 100644 GIT binary patch literal 9498 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 delta 780 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 V7j>r?Uq1i<002ovPDHLkV1n+EEtdcQ delta 947 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 humW;*g7R+&|Ledvc-