*** WIP WIP *** All charts work (mostly)
This commit is contained in:
+32
-15
@@ -196,7 +196,11 @@ async function getdavgData(opts) {
|
||||
}
|
||||
}
|
||||
}
|
||||
werte.n_AVG = 10 * Math.log10(sum / count);
|
||||
if (count === 0 ) {
|
||||
werte.n_AVG = -1
|
||||
} else {
|
||||
werte.n_AVG = 10 * Math.log10(sum / count);
|
||||
}
|
||||
werte.peakcount = pk;
|
||||
if (opts.csv) {
|
||||
csvStr += werte.datetime + ',' + werte.n_AVG + ',' + werte.peakcount + '\n'
|
||||
@@ -207,8 +211,10 @@ async function getdavgData(opts) {
|
||||
}
|
||||
if (opts.csv) {
|
||||
return csvStr;
|
||||
} else {
|
||||
} else if (!opts.chart || erg.err) {
|
||||
return {err: erg.err, values: val}
|
||||
} else {
|
||||
return noiseChart.davgData(opts, val)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -243,10 +249,10 @@ async function getdavgData(opts) {
|
||||
// *********************************************
|
||||
async function getdaynightData(opts) {
|
||||
opts.long = true;
|
||||
let erg = await getNoiseAVGData(opts);
|
||||
let erg = await getNoiseAVGData(opts);
|
||||
let val = [];
|
||||
let csvStr = 'datetime,n_dayAVG,n_nightAVG\n';
|
||||
if(!erg.err) {
|
||||
if (!erg.err) {
|
||||
let done = false;
|
||||
let dt;
|
||||
// The received hourly data array always (!!) starts at 0h00 local (!) time.
|
||||
@@ -256,8 +262,8 @@ async function getdaynightData(opts) {
|
||||
let dsum = 0, dcnt = 0;
|
||||
let nsum = 0, ncnt = 0;
|
||||
let werte = {};
|
||||
const item = erg.values[i]
|
||||
for (let k = 0; k < 16; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime === undefined) {
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
@@ -268,6 +274,7 @@ async function getdaynightData(opts) {
|
||||
}
|
||||
}
|
||||
if (i < (erg.values.length - 8)) {
|
||||
const item = erg.values[i]
|
||||
for (let k = 0; k < 8; k++, i++) {
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime === undefined) {
|
||||
@@ -303,9 +310,12 @@ async function getdaynightData(opts) {
|
||||
}
|
||||
if (opts.csv) {
|
||||
return csvStr;
|
||||
} else {
|
||||
} else if (!opts.chart || erg.err) {
|
||||
return {err: erg.err, values: val}
|
||||
} }
|
||||
} else {
|
||||
return noiseChart.dayNightData(opts, val)
|
||||
}
|
||||
}
|
||||
|
||||
// *********************************************
|
||||
// getLdenData
|
||||
@@ -358,20 +368,23 @@ async function getLdenData(opts) {
|
||||
let esum = 0, ecnt = 0;
|
||||
let werte = {};
|
||||
let dayAVG = 0, evnAVG = 0, nightAVG = 0;
|
||||
const item = erg.values[i]
|
||||
for (let k = 0; k < 12; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime == undefined) {
|
||||
werte.datetime = item.datetime;
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
}
|
||||
dsum += item.n_sum;
|
||||
dcnt += item.count;
|
||||
}
|
||||
}
|
||||
for (let k = 0; k < 4; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime == undefined) {
|
||||
werte.datetime = item.datetime;
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
}
|
||||
esum += item.n_sum;
|
||||
ecnt += item.count;
|
||||
@@ -379,9 +392,11 @@ async function getLdenData(opts) {
|
||||
}
|
||||
if (i < (erg.values.length - 8)) {
|
||||
for (let k = 0; k < 8; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime == undefined) {
|
||||
werte.datetime = item.datetime;
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
}
|
||||
nsum += item.n_sum;
|
||||
ncnt += item.count;
|
||||
@@ -410,8 +425,10 @@ async function getLdenData(opts) {
|
||||
}
|
||||
if (opts.csv) {
|
||||
return csvStr;
|
||||
} else {
|
||||
} else if (!opts.chart || erg.err) {
|
||||
return {err: erg.err, values: val}
|
||||
} else {
|
||||
return noiseChart.ldenData(opts, val)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -422,11 +439,11 @@ const getAPIprops = (opt) => {
|
||||
|
||||
const getNoiseAVGData = async (opts) => {
|
||||
let ret = {err: null, values: []}
|
||||
let emptyValues = {n_AVG:-1}
|
||||
let emptyValues = {n_AVG: -1}
|
||||
let small = '|> keep(columns: ["_time", "peakcount", "n_AVG"])'
|
||||
if (opts.long) {
|
||||
small = ''
|
||||
emptyValues = {n_sum: -1, n_AVG:-1}
|
||||
emptyValues.n_sum = -1
|
||||
}
|
||||
let queryAVG = `
|
||||
import "math"
|
||||
@@ -505,7 +522,7 @@ peak = data
|
||||
|
||||
const whatTable = [
|
||||
{'what':'live', 'span': 1, 'daystart': false, peak: false, 'func': getLiveData},
|
||||
{'what':'havg', 'span': 7, 'daystart': true, peak: true, 'func': gethavgData},
|
||||
{'what':'havg', 'span': 3, 'daystart': false, peak: true, 'func': gethavgData},
|
||||
{'what':'davg', 'span': 30, 'daystart': true, peak: true, 'func': getdavgData},
|
||||
{'what':'daynight', 'span': 30, 'daystart': true, peak: false, 'func': getdaynightData},
|
||||
{'what':'lden', 'span': 30, 'daystart': true, peak: false, 'func': getLdenData},
|
||||
|
||||
Reference in New Issue
Block a user