149 lines
4.0 KiB
JavaScript
149 lines
4.0 KiB
JavaScript
// Utility routine for plotting the data
|
||
|
||
export const colors = {'eq': '#0000FF', 'max': '#FF0000', 'min': '#008000', 'peaks': '#DAA520'};
|
||
export const noise_ymin = 30;
|
||
|
||
export function createGlobObtions() {
|
||
// Options, die für alle Plots identisch sind
|
||
let globObject = {
|
||
chart: {
|
||
spacingRight: 20,
|
||
spacingLeft: 20,
|
||
spacingTop: 25,
|
||
backgroundColor: {
|
||
linearGradient: [0, 400, 0, 0],
|
||
stops: [
|
||
[0, '#eee'],//[0, '#ACD0AA'], //[0, '#A18D99'], // [0, '#886A8B'], // [0, '#F2D0B5'],
|
||
[1, '#fff']
|
||
]
|
||
},
|
||
type: 'line',
|
||
borderWidth: '2',
|
||
// events: {
|
||
// selection: function (event) {
|
||
// if (event.xAxis) {
|
||
// doUpdate = false;
|
||
// } else {
|
||
// doUpdate = true;
|
||
// }
|
||
// }
|
||
// }
|
||
},
|
||
title: {
|
||
align: 'left',
|
||
style: {'fontSize': '25px'},
|
||
useHTML: true,
|
||
},
|
||
subtitle: {
|
||
align: 'left',
|
||
},
|
||
tooltip: {
|
||
valueDecimals: 1,
|
||
backgroundColor: '#ffffff',
|
||
borderWidth: 0,
|
||
borderRadius: 0,
|
||
useHTML: true,
|
||
},
|
||
xAxis: {
|
||
type: 'datetime',
|
||
title: {
|
||
text: 'date/time',
|
||
},
|
||
gridLineWidth: 2,
|
||
labels: {
|
||
formatter: function () {
|
||
let v = this.axis.defaultLabelFormatter.call(this);
|
||
if (v.indexOf(':') == -1) {
|
||
return '<span style="font-weight:bold;color:red">' + v + '<span>';
|
||
} else {
|
||
return v;
|
||
}
|
||
}
|
||
},
|
||
},
|
||
legend: {
|
||
enabled: true,
|
||
layout: 'horizontal',
|
||
// verticalAlign: 'top',
|
||
borderWidth: 1,
|
||
align: 'center',
|
||
},
|
||
plotOptions: {
|
||
series: {
|
||
animation: false,
|
||
turboThreshold: 0,
|
||
marker: {
|
||
enabled: false,
|
||
},
|
||
},
|
||
}
|
||
};
|
||
return globObject;
|
||
}
|
||
|
||
export function calcWeekends(data, isyear) {
|
||
/* let weekend = [];
|
||
let oldDay = 8;
|
||
for (let i = 0; i < data.length; i++) {
|
||
let mom = moment(data[i].date);
|
||
if (isyear) {
|
||
mom = moment(data[i]._id)
|
||
}
|
||
let day = mom.day();
|
||
let st = mom.startOf('day');
|
||
if (day != oldDay) {
|
||
if (day == 6) {
|
||
weekend.push({
|
||
color: 'rgba(169,235,158,0.4)',
|
||
from: st.valueOf(),
|
||
to: st.add(1, 'days').valueOf(),
|
||
zIndex: 0
|
||
})
|
||
} else if (day == 0) {
|
||
weekend.push({
|
||
color: 'rgba(169,235,158,0.4)',
|
||
from: st.valueOf(),
|
||
to: st.add(1, 'days').valueOf(),
|
||
zIndex: 0
|
||
})
|
||
}
|
||
oldDay = day;
|
||
}
|
||
}
|
||
return weekend;
|
||
*/}
|
||
|
||
export function calcDays(data, isyear) {
|
||
let days = [];
|
||
if (data.length == 0) {
|
||
return days
|
||
}
|
||
let oldday = moment(data[0].date).day();
|
||
if (isyear) {
|
||
oldday = moment(data[0]._id).day();
|
||
}
|
||
for (let i = 0; i < data.length; i++) {
|
||
let m = moment(data[i].date);
|
||
if (isyear) {
|
||
m = moment(data[i]._id);
|
||
}
|
||
let tag = m.day()
|
||
if (tag != oldday) {
|
||
m.startOf('day');
|
||
days.push({color: 'lightgray', value: m.valueOf(), width: 1, zIndex: 2});
|
||
oldday = tag;
|
||
}
|
||
}
|
||
return days;
|
||
};
|
||
|
||
export const setoptionfromtable = (opt,tabval) => {
|
||
let ret = opt
|
||
if ((opt === null) || (opt === '') || (opt === undefined) || (opt < tabval)){
|
||
ret = tabval
|
||
}
|
||
return ret
|
||
}
|
||
|
||
|