Created At: 2026-06-14T14:00:56Z
Completed At: 2026-06-14T14:00:56Z
File Path: `file:///c:/Users/HP/Downloads/climate-system/climate-system/index.php`
Total Lines: 4592
Total Bytes: 194080
Showing lines 2720 to 2760
The following code has been modified to include a line number before every line, in the format: <line_number>: <original_line>. Please note that any changes targeting the original code should remove the line number, colon, and leading space.
2720:       const textColor = isDark ? '#f1f5f9' : '#1e293b';
2721: 
2722:       let unit = '';
2723:       let yLabel = variableName;
2724:       const vNorm = variableName.toLowerCase();
2725:       if (vNorm.includes('precipitation') || vNorm.includes('curah hujan') || vNorm.includes('hujan')) {
2726:         unit = 'mm/tahun';
2727:         yLabel = 'Curah Hujan (mm/tahun)';
2728:       } else if (vNorm.includes('suhu') || vNorm.includes('temp') || vNorm.includes('temperature')) {
2729:         if (vNorm.includes('anomaly') || vNorm.includes('anomali') || vNorm.includes('minimum') || vNorm.includes('min')) {
2730:           unit = '°C';
2731:           yLabel = 'Temperature Anomaly';
2732:         } else {
2733:           unit = '°C';
2734:           yLabel = 'Suhu (°C)';
2735:         }
2736:       }
2737: 
2738:       let isTempAnomaly = false;
2739:       const vLower = vNorm.toLowerCase();
2740:       if (vLower.includes('anomaly') || vLower.includes('anomali') || vLower.includes('minimum') || vLower.includes('min')) {
2741:         isTempAnomaly = true;
2742:       } else if (vLower.includes('suhu') || vLower.includes('temp') || vLower.includes('temperature')) {
2743:         let maxVal = -Infinity;
2744:         historical.forEach(d => {
2745:           if (d.ssp126 !== undefined && d.ssp126 !== null && d.ssp126 > maxVal) maxVal = d.ssp126;
2746:         });
2747:         mean.forEach(d => {
2748:           if (d.ssp126 !== undefined && d.ssp126 !== null && d.ssp126 > maxVal) maxVal = d.ssp126;
2749:           if (d.ssp245 !== undefined && d.ssp245 !== null && d.ssp245 > maxVal) maxVal = d.ssp245;
2750:           if (d.ssp370 !== undefined && d.ssp370 !== null && d.ssp370 > maxVal) maxVal = d.ssp370;
2751:           if (d.ssp585 !== undefined && d.ssp585 !== null && d.ssp585 > maxVal) maxVal = d.ssp585;
2752:         });
2753:         if (maxVal < 12) {
2754:           isTempAnomaly = true;
2755:         }
2756:       } else if (vNorm.includes('kelembaban') || vNorm.includes('humidity') || vNorm.includes('kelembapan')) {
2757:         unit = '%';
2758:         yLabel = 'Kelembaban (%)';
2759:       } else if (vNorm.includes('kecepatan') || vNorm.includes('angin') || vNorm.includes('wind')) {
2760:         unit = 'm/s';
The above content does NOT show the entire file contents. If you need to view any lines of the file which were not shown to complete your task, call this tool again to view those lines.
