mainMapClimateData = {
let _ppt = await locationConfigs[location].data.ppt.arrayBuffer().then(cdf);
let _tmax = await locationConfigs[location].data.tmax.arrayBuffer().then(cdf);
let _tmin = await locationConfigs[location].data.tmin.arrayBuffer().then(cdf);
let tmax = await Float32Array.from(_tmax.getDataVariable("tmax"), (d) =>
d !== -32768 ? d * 0.01 - 99 : NaN
);
let tmin = await Float32Array.from(_tmin.getDataVariable("tmin"), (d) =>
d !== -32768 ? d * 0.01 - 99 : NaN
);
let ppt = Float32Array.from(_ppt.getDataVariable("ppt"), (d) =>
d !== -2147483648 ? d * 0.1 : NaN
).map((d) => (d < 10 ? NaN : d));
let lx = _tmax.getDataVariable("lon");
let ly = _tmax.getDataVariable("lat");
let l = lx.length;
let temp = tmax.map((max, i) => (max + tmin[i]) / 2);
let lon = (d, i) => lx[i % l];
let lat = (d, i) => ly[(i / l) | 0];
return {
ppt,
tmax,
tmin,
tmax,
tmin,
ppt,
lx,
ly,
l,
temp,
lon,
lat
};
}