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');
// $("#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(data, minValue, maxValue) {
    const range = maxValue - minValue;
    const margin = range * 0.25;
    
    return {
        min: Math.max(0, minValue - margin), // Nooit onder nul
        max: maxValue + margin
    };
}
var windChart = new Chart(windv, {
    type: 'line',
    data: {
        labels: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'wind',
            data: [4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,4,4,4,4,4,4,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([4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,4,4,4,4,4,4,4,4,4], 2, 7),
                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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'wind',
            data: [14,14,12,14,12,12,12,12,12,12,14,14,14,16,16,14,14,14,14,14,14,12,12,12],
            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([14,14,12,14,12,12,12,12,12,12,14,14,14,16,16,14,14,14,14,14,14,12,12,12], 2, 18),
                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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'wind',
            data: [25.2,25.2,21.6,25.2,21.6,21.6,21.6,21.6,21.6,21.6,25.2,25.2,25.2,28.8,28.8,25.2,25.2,25.2,25.2,25.2,25.2,21.6,21.6,21.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([25.2,25.2,21.6,25.2,21.6,21.6,21.6,21.6,21.6,21.6,25.2,25.2,25.2,28.8,28.8,25.2,25.2,25.2,25.2,25.2,25.2,21.6,21.6,21.6], 2, 30.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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'wind',
            data: [7,7,6,7,6,6,6,6,6,6,7,7,7,8,8,7,7,7,7,7,7,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([7,7,6,7,6,6,6,6,6,6,7,7,7,8,8,7,7,7,7,7,7,6,6,6], 2, 10),
                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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'luchtdruk',
            data: [1016.5,1016.5,1016.5,1016.6,1016.8,1017,1017.3,1017.6,1017.7,1017.6,1017.3,1016.8,1016.2,1015.7,1015.2,1014.8,1014.4,1014.3,1014.2,1014.2,1014.3,1014.2,1014.2,1014],
            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([1016.5,1016.5,1016.5,1016.6,1016.8,1017,1017.3,1017.6,1017.7,1017.6,1017.3,1016.8,1016.2,1015.7,1015.2,1014.8,1014.4,1014.3,1014.2,1014.2,1014.3,1014.2,1014.2,1014], 1009, 1023),
                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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'temperatuur',
            data: [13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,13,13,13],
            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([13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,13,13,13], 12, 16),
                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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'wolken',
            data: [100,100,100,17,100,100,100,100,100,99,0,0,0,0,0,0,0,0,0,6,9,0,43,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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'wolken',
            data: [0,95,0,0,99,100,100,95,0,0,0,0,1,89,90,21,99,90,100,100,100,13,100,2],
            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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'wolken',
            data: [71,97,100,92,51,1,1,0,0,19,89,42,85,97,100,100,100,100,100,100,27,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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        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],
            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 + ' 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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'Global radiation',
            data: [0,0,0,0,0,0,0,3,19,34,63,123,99,54,26,9,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 + ' 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: ["01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","00"],
        datasets: [{
            label: 'zicht',
            data: [50000,50000,50000,50000,7157,50000,50000,7553,50000,50000,11376,14170,50000,16404,50000,50000,16575,50000,50000,17713,50000,50000,50000,50000],
            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';
                    }
                }
            }
        }
    }
});