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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'wind', data: [2,2,2,2,2,2,2,2,1,2,2,1,2,1,2,1,1,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, 4), 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'wind', data: [6,6,6,6,6,6,4,4,2,4,4,2,4,2,4,2,2,4,4,4,6,4,6,4,4,4], 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, 8), 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'wind', data: [10.8,10.8,10.8,10.8,10.8,10.8,7.2,7.2,3.6,7.2,7.2,3.6,7.2,3.6,7.2,3.6,3.6,7.2,7.2,7.2,10.8,7.2,10.8,7.2,7.2,7.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, 12.8), 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'wind', data: [3,3,3,3,3,3,2,2,1,2,2,1,2,1,2,1,1,2,2,2,3,2,3,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 + ' 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'luchtdruk', data: [998.9,998.8,999.1,999.5,999.8,1000.2,1000.7,1001.2,1001.7,1002,1002.3,1002.8,1003.3,1003.9,1004.6,1005.2,1005.9,1006.6,1007.3,1007.9,1008.4,1009,1009.6,1010.3,1010.9,1011.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(994, 1017), 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'temperatuur', data: [4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,4,3,3,3,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: { ...calculateYAxisRangeTemp(2, 7), 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'wolken', data: [100,99,100,100,100,100,100,100,100,100,100,99,69,50,100,78,100,99,26,1,5,100,99,100,99,99], 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'wolken', data: [100,100,100,100,100,100,100,100,100,100,100,100,100,100,92,100,85,36,4,8,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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'wolken', data: [100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,97,5,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 neerslagChart = new Chart(neerslag, { type: 'bar', data: { labels: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'neerslag', data: [0.3,0,0.2,0.3,0.3,0.4,0.5,0.7,1.2,1.5,0.3,0.3,0.2,0,0,2.1,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, 4), 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'Global radiation', data: [0,0,0,4,10,16,13,12,8,15,37,16,16,10,1,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, 42), 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: ["04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00","01","02","03","04","05"], datasets: [{ label: 'zicht', data: [2618,2868,3469,3558,4800,4163,5316,14257,7822,22198,4153,9260,8619,7724,6767,2406,4085,4037,3077,2279,2215,2568,6828,50000,4851,5039], 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'; } } } } } });