var windv = document.getElementById('windc').getContext('2d');
var windkmh = document.getElementById('windkmh').getContext('2d');
var windms = document.getElementById('windms').getContext('2d');
var windknp = document.getElementById('windknp').getContext('2d');
var luchtdruk = document.getElementById('luchtdruk').getContext('2d');
var temperatuur = document.getElementById('temperatuur').getContext('2d');
var wolken = document.getElementById('bewolking').getContext('2d');
var mwolken = document.getElementById('mbewolking').getContext('2d');
var hwolken = document.getElementById('hbewolking').getContext('2d');
var neerslag = document.getElementById('neerslag').getContext('2d');
var straling = document.getElementById('straling').getContext('2d');
var zicht = document.getElementById('zicht').getContext('2d');
var radarverwachting = document.getElementById('radarverwachting').getContext('2d');
// $("#windr").html("test");
document.getElementById("windr").innerHTML="
 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
";
var gradient = windv.createLinearGradient(0, 0, 0, 400);
gradient.addColorStop(0, 'rgba(0,111,174,0.8)');
gradient.addColorStop(1, 'rgba(21,31,38,0.5)');
// Functie om min/max waarden te berekenen met 25% marge
function calculateYAxisRange(minValue, maxValue) {
const range = maxValue - minValue;
const margin = range * 0.25;
return {
min: Math.max(0, minValue - margin), // Nooit onder nul
max: maxValue + margin
};
}
function calculateYAxisRangeTemp(minValue, maxValue) {
const range = maxValue - minValue;
const margin = range * 0.25;
var minwaarde = Math.max(0, minValue - margin); // min volgt data, maar als min niet onder nul ligt, geen negatieve ruimte tonen onder grafiek
if (minValue < -1) {
minwaarde = minValue - margin;
}
return {
min: minwaarde,
max: maxValue + margin
};
}
var radarChart = new Chart(radarverwachting, {
type: 'bar',
data: {
labels: ,
datasets: [{
label: 'Radar neerslag',
data: ,
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(0, ),
ticks: {
callback: function(value, index, ticks) {
return value + ' mm';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' mm';
}
}
}
}
}
});
var windChart = new Chart(windv, {
type: 'line',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'wind',
data: [2,3,3,3,3,3,3,3,2,2,2,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1,
fill: true
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(0, 5),
ticks: {
callback: function(value, index, ticks) {
return value + ' bft';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' bft';
}
}
}
}
}
});
var windknpChart = new Chart(windknp, {
type: 'line',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'wind',
data: [6,8,8,10,10,10,10,8,6,4,4,2,2,2,2,2,4,6,6,4,4,4,6,6,6,6],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1,
fill: true
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(0, 12),
ticks: {
callback: function(value, index, ticks) {
return value + ' knp';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' knp';
}
}
}
}
}
});
var windkmhChart = new Chart(windkmh, {
type: 'line',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'wind',
data: [10.8,14.4,14.4,18,18,18,18,14.4,10.8,7.2,7.2,3.6,3.6,3.6,3.6,3.6,7.2,10.8,10.8,7.2,7.2,7.2,10.8,10.8,10.8,10.8],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1,
fill: true
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(0, 20),
ticks: {
callback: function(value, index, ticks) {
return value + ' km/h';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' km/h';
}
}
}
}
}
});
var windmsChart = new Chart(windms, {
type: 'line',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'wind',
data: [3,4,4,5,5,5,5,4,3,2,2,1,1,1,1,1,2,3,3,2,2,2,3,3,3,3],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1,
fill: true
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(0, 7),
ticks: {
callback: function(value, index, ticks) {
return value + ' m/s';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' m/s';
}
}
}
}
}
});
var luchtdChart = new Chart(luchtdruk, {
type: 'line',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'luchtdruk',
data: [1017.1,1016.7,1016.6,1016.7,1017,1017.3,1017.5,1017.8,1018.1,1018.4,1018.7,1019.3,1019.9,1020.2,1020.3,1020.2,1020.1,1020.3,1020.6,1020.7,1020.7,1020.9,1021.2,1021.4,1021.4,1021.3],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1,
fill: true
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(1012, 1026),
ticks: {
callback: function(value, index, ticks) {
return value + ' hPa';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' hPa';
}
}
}
}
}
});
var tempChart = new Chart(temperatuur, {
type: 'line',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'temperatuur',
data: [25,23,22,22,22,22,22,22,22,21,20,19,17,16,15,14,13,13,13,13,13,15,17,19,21,23],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1,
fill: true
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRangeTemp(12, 27),
ticks: {
callback: function(value, index, ticks) {
return value + ' ºC';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' ºC';
}
}
}
}
}
});
var wolkenChart = new Chart(wolken, {
type: 'bar',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'wolken',
data: [100,91,75,99,27,25,1,68,2,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
beginAtZero: true,
ticks: {
callback: function(value, index, ticks) {
return value + ' %';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' %';
}
}
}
}
}
});
var mwolkenChart = new Chart(mwolken, {
type: 'bar',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'wolken',
data: [1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,10,0,0,0,0,0,0,0],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
beginAtZero: true,
ticks: {
callback: function(value, index, ticks) {
return value + ' %';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' %';
}
}
}
}
}
});
var hwolkenChart = new Chart(hwolken, {
type: 'bar',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'wolken',
data: [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,33,28],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
beginAtZero: true,
ticks: {
callback: function(value, index, ticks) {
return value + ' %';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' %';
}
}
}
}
}
});
var neerslagChart = new Chart(neerslag, {
type: 'bar',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'neerslag',
data: [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(0, 2),
ticks: {
callback: function(value, index, ticks) {
return value + ' mm';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' mm';
}
}
}
}
}
});
var stralingChart = new Chart(straling, {
type: 'bar',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'Global radiation',
data: [141,186,227,198,230,265,230,167,133,85,34,3,0,0,0,0,0,0,0,0,12,54,106,162,212,255],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
...calculateYAxisRange(0, 270),
ticks: {
callback: function(value, index, ticks) {
return value + ' W/m2';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' W/m2';
}
}
}
}
}
});
var zichtChart = new Chart(zicht, {
type: 'line',
data: {
labels: ["10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05","06","07","08","09","10","11"],
datasets: [{
label: 'zicht',
data: [16288,21027,23470,23613,25770,26656,27793,26388,26830,21633,17897,15825,12474,10515,9472,9359,8398,9663,12782,12803,12168,16423,22140,25403,27408,30343],
backgroundColor: 'rgba(0,111,174,0.8)',
borderColor: 'rgba(0,111,174,1)',
borderWidth: 1,
fill: true
}]
},
options: {
plugins: {
legend: {
display: false
}
},
scales: {
y: {
min: 0,
max: 55000,
ticks: {
callback: function(value, index, ticks) {
return value + ' m';
}
}
}
},
plugins: {
tooltip: {
enabled: true,
mode: 'index',
intersect: false,
callbacks: {
title: function(tooltipItems) {
return tooltipItems[0].label + ' uur';
},
label: function(tooltipItem) {
return tooltipItem.raw + ' m';
}
}
}
}
}
});