= [];
- let divisor = 1;
+ seriesData.push({ name: 'Temperature', data: [], yAxis: 0, tooltip: { valueSuffix: '°F' } } as SeriesLineOptions);
+ seriesData.push({ name: 'Pressure', data: [], yAxis: 1, tooltip: { valueSuffix: '"' } } as SeriesLineOptions);
+ seriesData.push({ name: 'Humidity', data: [], yAxis: 2, tooltip: { valueSuffix: '%' } } as SeriesLineOptions);
+ seriesData.push({ name: 'Light', data: [], yAxis: 2, tooltip: { valueSuffix: '%' } } as SeriesLineOptions);
- if (this.chartType === 'Pressure') {
- divisor = 100;
- }
-
- data.forEach(dataElement => array.push([Date.parse(dataElement.bucket), dataElement.averageValue / divisor]));
+ data.forEach(dataElement => {
+ const date = Date.parse(dataElement.bucket);
+ seriesData[0].data.push([date, dataElement.averagePressureTemperature]);
+ seriesData[1].data.push([date, dataElement.averagePressure / 33.864]);
+ seriesData[2].data.push([date, dataElement.averageHumidity]);
+ seriesData[3].data.push([date, dataElement.averageLightLevel]);
+ });
this.chart = new Chart({
chart: {
type: 'line'
},
title: {
- text: 'Linechart'
+ text: ''
},
credits: {
enabled: true
},
xAxis: {
type: 'datetime',
- },
- yAxis: {
- labels: {
- format: '{value:.2f}'
+ dateTimeLabelFormats: {
+ millisecond: '%H:%M:%S.%L',
+ second: '%H:%M:%S',
+ minute: '%H:%M',
+ hour: '%l:%M %P',
+ day: '%b %e',
+ week: '%e. %b',
+ month: '%b \'%y',
+ year: '%Y'
}
},
+ yAxis: [
+ {
+ labels: {
+ format: '{value:.2f}°F',
+ },
+ title: {
+ text: ''
+ }
+ },
+ {
+ labels: {
+ format: '{value:.2f}"'
+ },
+ title: {
+ text: ''
+ },
+ opposite: true
+ },
+ {
+ visible: false,
+ min: 0,
+ max: 100
+ }
+ ],
time: {
useUTC: false
},
tooltip: {
- valueDecimals: 2
+ valueDecimals: 2,
+ shared: true,
+ dateTimeLabelFormats: {
+ day: '%A, %b %e, %Y',
+ hour: '%A, %b %e, %H:%M',
+ millisecond: '%A, %b %e, %H:%M:%S.%L',
+ minute: '%A, %b %e, %l:%M %P',
+ month: '%B %Y',
+ second: '%A, %b %e, %H:%M:%S',
+ week: 'Week from %A, %b %e, %Y',
+ year: '%Y'
+ }
},
- series: [
- {
- name: 'Line 1',
- data: array
- } as SeriesLineOptions
- ]
+ series: seriesData,
+ legend: {
+ enabled: true
+ }
});
this.loading = false;
diff --git a/Display/src/app/components/weather/current/weather-current.component.html b/Display/src/app/components/weather/current/weather-current.component.html
index 665b134..3eb93b9 100644
--- a/Display/src/app/components/weather/current/weather-current.component.html
+++ b/Display/src/app/components/weather/current/weather-current.component.html
@@ -26,7 +26,7 @@
Pressure
|
- {{ (latestReading.Pressure / 100).toFixed(2) }} mbar
+ {{ (latestReading.Pressure / 33.864 / 100).toFixed(2) }}"
|
diff --git a/Display/src/app/models/weather/weather-reading-grouped.ts b/Display/src/app/models/weather/weather-reading-grouped.ts
new file mode 100644
index 0000000..803bb95
--- /dev/null
+++ b/Display/src/app/models/weather/weather-reading-grouped.ts
@@ -0,0 +1,8 @@
+export class WeatherReadingGrouped {
+ bucket: string;
+ averagePressureTemperature: number;
+ averagePressure: number;
+ averageLightLevel: number;
+ averageHumidity: number;
+ averageHumidityTemperature: number;
+}