JavaScript
document.addEventListener("DOMContentLoaded", function() {
var COLORS = [
'#cd2a27',
'#b34442',
'#9c5554',
'#85605f',
'#6e6363',
'#616661',
'#537557',
'#3d8244',
'#23912e',
'#009e0f'
];
function getColor(value, min, max) {
var step = (parseFloat((max - min).toFixed(4))) / COLORS.length,
cursor = min,
i = 0;
for (; cursor <= max; i++) {
if (value >= cursor && value <= parseFloat((cursor + step).toFixed(4))) {
return COLORS[i];
}
cursor = parseFloat((cursor + step).toFixed(4))
}
}
function numberFormat(value) {
return value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
}
var gridMapData = [
['ISL', ' ', ' ', 'NOR', 'SWE', 'FIN', ' ', ' ', ' ', ' '],
[' ', ' ', ' ', ' ', 'DNK', ' ', 'EST', ' ', ' ', ' '],
['IRL', 'GBR', ' ', 'NLD', 'DEU', 'POL', 'LTU', 'LVA', ' ', ' '],
[' ', ' ', ' ', 'BEL', 'CHE', 'CZE', 'BLR', 'RUS', ' ', ' '],
[' ', ' ', 'FRA', 'LUX', 'AUT', 'SVK', 'HGR', 'UKR', ' ', ' '],
['PRT', 'ESP', ' ', 'ITA', 'SLO', 'HRV', 'ROU', ' ', 'GEO', 'AZE'],
[' ', ' ', ' ', ' ', ' ', 'SRB', 'BGR', 'TUR', 'ARM', ' '],
[' ', ' ', 'MLT', ' ', ' ', 'GRC', ' ', 'CYP', ' ', ' ']
];
var mapInfo = {
EST: {
group: 0,
name: 'Estonia',
capital: 'Tallinn',
sales: 20349
},
POL: {
group: 0,
name: 'Poland',
capital: 'Warsaw',
sales: 354972
},
LTU: {
group: 0,
name: 'Lithuania',
sales: 17085,
capital: 'Vilnius'
},
LVA: {
group: 0,
name: 'Latvia',
sales: 13765,
capital: 'Riga'
},
BLR: {
group: 0,
name: 'Belarus',
sales: 0,
capital: 'Minsk'
},
RUS: {
group: 0,
name: 'Russia',
sales: 0,
capital: 'Moscow'
},
UKR: {
group: 0,
name: 'Ukraine',
...