У меня проблема с моим кодом.Я хочу сделать три карты мира.два из них работают, потому что я использую тот же массив, но третий (с другим массивом) не работает.Я сделал то же самое, что и для первого, но все равно ничего не получится.Они не выбирают правильные долготы и широты.Он должен отбирать у страны долготы и широты, а не отбракованные, но должен рисовать кружки размером отклоненных.
Я пробовал много вещей, но это не сработает.Я предполагаю, что проблема может быть здесь, но я не уверен.
var arrayFullOfCircles = [];
init();
function init () {
arrayFullOfCircles = getCountries();
}
var arr = [];
for (var i = 0; i < data.length; i++) {
var attrAlreadyExists = false;
for (j = 0; j < arr.length; j++) {
if (data[i][attr] === arr[j][attr]) {
attrAlreadyExists = true;
break;
}
}
if (attrAlreadyExists) {
if (!isNaN(Number(data[i].r))) {
arr[j].rSum += Number(data[i].r);
}
} else {
arr.push({
rSum: Number(data[i].r),
});
arr[arr.length - 1][attr] = data[i][attr];
arr[arr.length - 1][attr + "lo"] = data[i][attr + "lo"];
arr[arr.length - 1][attr + "la"] = data[i][attr + "la"];
}
}
function makeRejectedMap() {
for (var j = 0; j < arrayFullOfCircles.length; j++) {
arrayFullOfCircles[j].changed = false;
}
for (i = 0; i < rSumsByCountry.length; i++) {
xPos = map(rSumsByCountry[i].clo, 0 - 180, 180, 0, paperWidth);
yPos = paperHeight - map(rSumsByCountry[i].cla, 0 - 90, 90, 0, paperHeight);
radius = map(areaToRadius(rSumsByCountry[i].rSum), 0, areaToRadius(17000), 0, 4);
for (var j = 0; j < arrayFullOfCircles.length; j++) {
if (arrayFullOfCircles[j].countryCode == rSumsByCountry[i].c) {
arrayFullOfCircles[j].changed = true;
changeCircle(arrayFullOfCircles[j].countryCircle, xPos, yPos, radius, "#FF4545B");
}
}
}
В консоли нет ошибок.Но он записывает неверный массив.