A world heat map of US reciprocal tariff rates by country from April 2025, as first announced and as updated: the darker the color, the higher the rate.
A heat map, or choropleth, colors each country by its value, so the pattern across the world shows at a glance, and the heat legend ties the colors back to numbers. Two sets of data on one map make a before-and-after view: in the updated set, every rate is 10% except China's, which rises to 125%. Countries that are not in the data stay a plain gray.
Built with amCharts 5, a JavaScript library. The JavaScript includes your theme and renderer (canvas or SVG); the JSON also follows the changes you make with the controls.
npm install @amcharts/amcharts5 and @amcharts/amcharts5-geodata. See Getting started.
The same chart as a JSON config. Chart Maker reads and writes this format, the library's JSON parser turns it into a chart, and the <am5-chart> element puts it on a page with no code."type" is the class to create and "settings" what you would pass to its new() in code; "properties" fill in its parts, lists such as series and axes or templates such as columns.template; "refs" holds objects used in more than one place ("#series-0" stands for the one named series-0); a string starting with "@" takes a value from another object, such as "@series.get('fill')".
A complete page. Save it as an .html file and open it in a browser.
Paste this into an AI coding assistant to build the chart from scratch. More in amCharts & AI.
// US reciprocal tariff rates by country, in percent, from April 2025: the rates
// as first announced, and as updated
var data = [
{
"id": "CN",
"announced": 34,
"updated": 125
},
{
"id": "AT",
"announced": 20,
"updated": 10
},
{
"id": "BE",
"announced": 20,
"updated": 10
},
{
"id": "BG",
"announced": 20,
"updated": 10
},
{
"id": "HR",
"announced": 20,
"updated": 10
},
{
"id": "CY",
"announced": 20,
"updated": 10
},
{
"id": "CZ",
"announced": 20,
"updated": 10
},
{
"id": "DK",
"announced": 20,
"updated": 10
},
{
"id": "EE",
"announced": 20,
"updated": 10
},
{
"id": "FI",
"announced": 20,
"updated": 10
},
{
"id": "FR",
"announced": 20,
"updated": 10
},
{
"id": "DE",
"announced": 20,
"updated": 10
},
{
"id": "GR",
"announced": 20,
"updated": 10
},
{
"id": "HU",
"announced": 20,
"updated": 10
},
{
"id": "IE",
"announced": 20,
"updated": 10
},
{
"id": "IT",
"announced": 20,
"updated": 10
},
{
"id": "LV",
"announced": 20,
"updated": 10
},
{
"id": "LT",
"announced": 20,
"updated": 10
},
{
"id": "LU",
"announced": 20,
"updated": 10
},
{
"id": "MT",
"announced": 20,
"updated": 10
},
{
"id": "NL",
"announced": 20,
"updated": 10
},
{
"id": "PL",
"announced": 20,
"updated": 10
},
{
"id": "PT",
"announced": 20,
"updated": 10
},
{
"id": "RO",
"announced": 20,
"updated": 10
},
{
"id": "SK",
"announced": 20,
"updated": 10
},
{
"id": "SI",
"announced": 20,
"updated": 10
},
{
"id": "ES",
"announced": 20,
"updated": 10
},
{
"id": "SE",
"announced": 20,
"updated": 10
},
{
"id": "VN",
"announced": 46,
"updated": 10
},
{
"id": "TW",
"announced": 32,
"updated": 10
},
{
"id": "JP",
"announced": 24,
"updated": 10
},
{
"id": "IN",
"announced": 26,
"updated": 10
},
{
"id": "TH",
"announced": 36,
"updated": 10
},
{
"id": "CH",
"announced": 31,
"updated": 10
},
{
"id": "ID",
"announced": 32,
"updated": 10
},
{
"id": "MY",
"announced": 24,
"updated": 10
},
{
"id": "KH",
"announced": 49,
"updated": 10
},
{
"id": "GB",
"announced": 10,
"updated": 10
},
{
"id": "ZA",
"announced": 30,
"updated": 10
},
{
"id": "BR",
"announced": 10,
"updated": 10
},
{
"id": "BD",
"announced": 37,
"updated": 10
},
{
"id": "SG",
"announced": 10,
"updated": 10
},
{
"id": "IL",
"announced": 17,
"updated": 10
},
{
"id": "PH",
"announced": 17,
"updated": 10
},
{
"id": "CL",
"announced": 10,
"updated": 10
},
{
"id": "AU",
"announced": 10,
"updated": 10
},
{
"id": "PK",
"announced": 29,
"updated": 10
},
{
"id": "TR",
"announced": 10,
"updated": 10
},
{
"id": "LK",
"announced": 44,
"updated": 10
},
{
"id": "CO",
"announced": 10,
"updated": 10
},
{
"id": "PE",
"announced": 10,
"updated": 10
},
{
"id": "NI",
"announced": 18,
"updated": 10
},
{
"id": "NO",
"announced": 15,
"updated": 10
},
{
"id": "CR",
"announced": 10,
"updated": 10
},
{
"id": "JO",
"announced": 20,
"updated": 10
},
{
"id": "DO",
"announced": 10,
"updated": 10
},
{
"id": "AE",
"announced": 10,
"updated": 10
},
{
"id": "NZ",
"announced": 10,
"updated": 10
},
{
"id": "AR",
"announced": 10,
"updated": 10
},
{
"id": "EC",
"announced": 10,
"updated": 10
},
{
"id": "GT",
"announced": 10,
"updated": 10
},
{
"id": "HN",
"announced": 10,
"updated": 10
},
{
"id": "MG",
"announced": 47,
"updated": 10
},
{
"id": "MM",
"announced": 44,
"updated": 10
},
{
"id": "TN",
"announced": 28,
"updated": 10
},
{
"id": "KZ",
"announced": 27,
"updated": 10
},
{
"id": "RS",
"announced": 37,
"updated": 10
},
{
"id": "EG",
"announced": 10,
"updated": 10
},
{
"id": "SA",
"announced": 10,
"updated": 10
},
{
"id": "SV",
"announced": 10,
"updated": 10
},
{
"id": "BW",
"announced": 37,
"updated": 10
},
{
"id": "TT",
"announced": 10,
"updated": 10
},
{
"id": "MA",
"announced": 10,
"updated": 10
},
{
"id": "DZ",
"announced": 30,
"updated": 10
},
{
"id": "OM",
"announced": 10,
"updated": 10
},
{
"id": "UY",
"announced": 10,
"updated": 10
},
{
"id": "BS",
"announced": 10,
"updated": 10
},
{
"id": "LS",
"announced": 50,
"updated": 10
},
{
"id": "UA",
"announced": 10,
"updated": 10
},
{
"id": "BH",
"announced": 10,
"updated": 10
},
{
"id": "QA",
"announced": 10,
"updated": 10
},
{
"id": "MU",
"announced": 40,
"updated": 10
},
{
"id": "FJ",
"announced": 32,
"updated": 10
},
{
"id": "IS",
"announced": 10,
"updated": 10
},
{
"id": "KE",
"announced": 10,
"updated": 10
},
{
"id": "LI",
"announced": 37,
"updated": 10
},
{
"id": "GY",
"announced": 38,
"updated": 10
},
{
"id": "HT",
"announced": 10,
"updated": 10
},
{
"id": "BA",
"announced": 35,
"updated": 10
},
{
"id": "NG",
"announced": 14,
"updated": 10
},
{
"id": "NA",
"announced": 21,
"updated": 10
},
{
"id": "BO",
"announced": 10,
"updated": 10
},
{
"id": "PA",
"announced": 10,
"updated": 10
},
{
"id": "VE",
"announced": 15,
"updated": 10
},
{
"id": "MK",
"announced": 33,
"updated": 10
},
{
"id": "ET",
"announced": 10,
"updated": 10
},
{
"id": "GH",
"announced": 10,
"updated": 10
},
{
"id": "MD",
"announced": 31,
"updated": 10
},
{
"id": "AO",
"announced": 32,
"updated": 10
},
{
"id": "JM",
"announced": 10,
"updated": 10
},
{
"id": "MZ",
"announced": 16,
"updated": 10
},
{
"id": "PY",
"announced": 10,
"updated": 10
},
{
"id": "ZM",
"announced": 17,
"updated": 10
},
{
"id": "LB",
"announced": 10,
"updated": 10
},
{
"id": "CD",
"announced": 10,
"updated": 10
},
{
"id": "BF",
"announced": 10,
"updated": 10
},
{
"id": "CI",
"announced": 10,
"updated": 10
},
{
"id": "TZ",
"announced": 10,
"updated": 10
},
{
"id": "IQ",
"announced": 39,
"updated": 10
},
{
"id": "GE",
"announced": 10,
"updated": 10
},
{
"id": "SN",
"announced": 10,
"updated": 10
},
{
"id": "AZ",
"announced": 10,
"updated": 10
},
{
"id": "CM",
"announced": 11,
"updated": 10
},
{
"id": "UG",
"announced": 10,
"updated": 10
},
{
"id": "AL",
"announced": 10,
"updated": 10
},
{
"id": "AM",
"announced": 10,
"updated": 10
},
{
"id": "NP",
"announced": 10,
"updated": 10
},
{
"id": "GA",
"announced": 10,
"updated": 10
},
{
"id": "KW",
"announced": 10,
"updated": 10
},
{
"id": "TG",
"announced": 10,
"updated": 10
},
{
"id": "SR",
"announced": 10,
"updated": 10
},
{
"id": "BZ",
"announced": 10,
"updated": 10
},
{
"id": "PG",
"announced": 10,
"updated": 10
},
{
"id": "MW",
"announced": 17,
"updated": 10
},
{
"id": "LR",
"announced": 10,
"updated": 10
},
{
"id": "VG",
"announced": 10,
"updated": 10
},
{
"id": "AF",
"announced": 10,
"updated": 10
},
{
"id": "ZW",
"announced": 18,
"updated": 10
},
{
"id": "BJ",
"announced": 10,
"updated": 10
},
{
"id": "BB",
"announced": 10,
"updated": 10
},
{
"id": "MC",
"announced": 10,
"updated": 10
},
{
"id": "UZ",
"announced": 10,
"updated": 10
},
{
"id": "CG",
"announced": 10,
"updated": 10
},
{
"id": "DJ",
"announced": 10,
"updated": 10
},
{
"id": "PF",
"announced": 10,
"updated": 10
},
{
"id": "KY",
"announced": 10,
"updated": 10
},
{
"id": "CW",
"announced": 10,
"updated": 10
},
{
"id": "VU",
"announced": 22,
"updated": 10
},
{
"id": "RW",
"announced": 10,
"updated": 10
},
{
"id": "SL",
"announced": 10,
"updated": 10
},
{
"id": "MN",
"announced": 10,
"updated": 10
},
{
"id": "SM",
"announced": 10,
"updated": 10
},
{
"id": "AG",
"announced": 10,
"updated": 10
},
{
"id": "BM",
"announced": 10,
"updated": 10
},
{
"id": "SZ",
"announced": 10,
"updated": 10
},
{
"id": "MH",
"announced": 10,
"updated": 10
},
{
"id": "PM",
"announced": 10,
"updated": 10
},
{
"id": "KN",
"announced": 10,
"updated": 10
},
{
"id": "TM",
"announced": 10,
"updated": 10
},
{
"id": "GD",
"announced": 10,
"updated": 10
},
{
"id": "SD",
"announced": 10,
"updated": 10
},
{
"id": "TC",
"announced": 10,
"updated": 10
},
{
"id": "AW",
"announced": 10,
"updated": 10
},
{
"id": "ME",
"announced": 10,
"updated": 10
},
{
"id": "KG",
"announced": 10,
"updated": 10
},
{
"id": "YE",
"announced": 10,
"updated": 10
},
{
"id": "VC",
"announced": 10,
"updated": 10
},
{
"id": "NE",
"announced": 10,
"updated": 10
},
{
"id": "LC",
"announced": 10,
"updated": 10
},
{
"id": "NR",
"announced": 30,
"updated": 10
},
{
"id": "GQ",
"announced": 13,
"updated": 10
},
{
"id": "LY",
"announced": 31,
"updated": 10
},
{
"id": "WS",
"announced": 10,
"updated": 10
},
{
"id": "GN",
"announced": 10,
"updated": 10
},
{
"id": "TL",
"announced": 10,
"updated": 10
},
{
"id": "MS",
"announced": 10,
"updated": 10
},
{
"id": "TD",
"announced": 13,
"updated": 10
},
{
"id": "ML",
"announced": 10,
"updated": 10
},
{
"id": "MV",
"announced": 10,
"updated": 10
},
{
"id": "TJ",
"announced": 10,
"updated": 10
},
{
"id": "CV",
"announced": 10,
"updated": 10
},
{
"id": "BI",
"announced": 10,
"updated": 10
},
{
"id": "GP",
"announced": 10,
"updated": 10
},
{
"id": "BT",
"announced": 10,
"updated": 10
},
{
"id": "MQ",
"announced": 10,
"updated": 10
},
{
"id": "TO",
"announced": 10,
"updated": 10
},
{
"id": "MR",
"announced": 10,
"updated": 10
},
{
"id": "DM",
"announced": 10,
"updated": 10
},
{
"id": "GM",
"announced": 10,
"updated": 10
},
{
"id": "GF",
"announced": 10,
"updated": 10
},
{
"id": "CX",
"announced": 10,
"updated": 10
},
{
"id": "AD",
"announced": 10,
"updated": 10
},
{
"id": "CF",
"announced": 10,
"updated": 10
},
{
"id": "SB",
"announced": 10,
"updated": 10
},
{
"id": "YT",
"announced": 10,
"updated": 10
},
{
"id": "AI",
"announced": 10,
"updated": 10
},
{
"id": "CC",
"announced": 10,
"updated": 10
},
{
"id": "ER",
"announced": 10,
"updated": 10
},
{
"id": "CK",
"announced": 10,
"updated": 10
},
{
"id": "SS",
"announced": 10,
"updated": 10
},
{
"id": "KM",
"announced": 10,
"updated": 10
},
{
"id": "KI",
"announced": 10,
"updated": 10
},
{
"id": "NF",
"announced": 10,
"updated": 10
},
{
"id": "GI",
"announced": 10,
"updated": 10
},
{
"id": "TV",
"announced": 10,
"updated": 10
},
{
"id": "IO",
"announced": 10,
"updated": 10
},
{
"id": "TK",
"announced": 10,
"updated": 10
},
{
"id": "GW",
"announced": 10,
"updated": 10
},
{
"id": "SJ",
"announced": 10,
"updated": 10
},
{
"id": "RE",
"announced": 10,
"updated": 10
}
]
// Create root element
// https://www.amcharts.com/docs/v5/getting-started/#Root_element
var root = am5.Root.new("chartdiv");
// a theme of its own, for the label size below
var myTheme = am5.Theme.new(root);
myTheme.rule("Label").setAll({
fontSize: "0.8em" // every label at 80% of the chart's text size
});
// Set themes
// https://www.amcharts.com/docs/v5/concepts/themes/
root.setThemes([am5themes_Animated.new(root), myTheme, am5themes_Responsive.new(root)]);
// Colors from the theme, so the map follows the theme: the rates and the buttons in its first color
var colors = am5.ColorSet.new(root, {});
var mainColor = colors.getIndex(0); // the theme's first color
// Button colors in the main color, for any buttons on the map (a zoom control, for one)
root.interfaceColors.setAll({
primaryButton: mainColor, // a button at rest...
primaryButtonHover: am5.Color.lighten(mainColor, 0.2), // ...lighter under the mouse...
primaryButtonDown: am5.Color.lighten(mainColor, -0.2), // ...darker while pressed...
primaryButtonActive: am5.Color.lighten(mainColor, 0.7) // ...and much lighter while switched on
});
// Every number on the map is a rate in percent: in tooltips and on the heat legend
// https://www.amcharts.com/docs/v5/concepts/formatters/formatting-numbers/
root.numberFormatter.set("numberFormat", "#'%'");
// Create the map chart
// https://www.amcharts.com/docs/v5/charts/map-chart/
var chart = root.container.children.push(am5map.MapChart.new(root, {
// the map can zoom out to half its fitted size
minZoomLevel: 0.5,
// go to the home view once the map is fitted
autoHome: true,
projection: am5map.geoEqualEarth() // equal-area: countries keep their true relative size
}));
// Create series for the water: a faint fill behind the countries
// https://www.amcharts.com/docs/v5/charts/map-chart/map-polygon-series/#Background_polygon
var waterSeries = chart.series.push(am5map.MapPolygonSeries.new(root, {
// the map fits the countries, not this rectangle around the whole world
affectsBounds: false
}));
waterSeries.mapPolygons.template.setAll({
fill: root.interfaceColors.get("alternativeBackground"), // the theme's contrast color...
fillOpacity: 0.05, // ...at 5%, a faint tint
strokeOpacity: 0 // no outline
});
waterSeries.data.push({
geometry: am5map.getGeoRectangle(90, 180, -90, -180) // north, east, south and west edges: the whole world
});
// Create graticule series
// https://www.amcharts.com/docs/v5/charts/map-chart/graticule-series/
var graticuleSeries = chart.series.push(am5map.GraticuleSeries.new(root, {
step: 10 // a line every 10 degrees
}));
graticuleSeries.mapLines.template.set("strokeOpacity", 0.05); // faint lines
// Create main polygon series for countries
// https://www.amcharts.com/docs/v5/charts/map-chart/map-polygon-series/
var polygonSeries = chart.series.push(am5map.MapPolygonSeries.new(root, {
geoJSON: am5geodata_worldLow, // the world's countries, in low detail
valueField: "announced", // the rates as first announced color the map
// works out the lowest and highest rate, for the heat rule and the legend
calculateAggregates: true
}));
polygonSeries.mapPolygons.template.setAll({
tooltipText: "{name}: {value}",
// countries that are not in the data: a gray close to the background
fill: am5.Color.interpolate(0.15, root.interfaceColors.get("background"), root.interfaceColors.get("alternativeBackground")),
stroke: root.interfaceColors.get("background") // borders in the background color
});
// Countries that are not in the data say so
polygonSeries.mapPolygons.template.adapters.add("tooltipText", function (text, target) {
return target.dataItem.get("value") == null ? "{name}: not in the data" : text;
});
// The higher the rate, the darker the color
// https://www.amcharts.com/docs/v5/concepts/settings/heat-rules/
polygonSeries.set("heatRules", [{
target: polygonSeries.mapPolygons.template,
dataField: "value", // by each country's value, the rate
min: am5.Color.lighten(mainColor, 0.6), // the lowest rate in a light tint of the main color...
max: am5.Color.brighten(mainColor, -0.5), // ...the highest in a dark shade of it
key: "fill" // the setting the rule changes
}]);
polygonSeries.data.setAll(data);
// Create heat legend
// https://www.amcharts.com/docs/v5/charts/map-chart/#Heat_legend
var heatLegend = chart.children.push(am5.HeatLegend.new(root, {
orientation: "vertical", // a bar that runs up and down
startColor: am5.Color.lighten(mainColor, 0.6), // the same colors as the heat rule
endColor: am5.Color.brighten(mainColor, -0.5),
// 8 blocks of color instead of a smooth gradient
stepCount: 8,
x: am5.p100, // at the right edge...
centerX: am5.p100,
y: am5.percent(10), // ...from 10% down
height: am5.percent(60), // 60% of the map's height, which leaves the zoom buttons room below it
paddingRight: 20 // a little room from the edge
}));
heatLegend.startLabel.setAll({
fontSize: 12
});
heatLegend.endLabel.setAll({
fontSize: 12
});
// The legend runs from the lowest rate to the highest
polygonSeries.events.on("datavalidated", function () {
heatLegend.set("startValue", polygonSeries.getPrivate("valueLow"));
heatLegend.set("endValue", polygonSeries.getPrivate("valueHigh"));
});
// Point at a country to see where its rate sits on the legend
polygonSeries.mapPolygons.template.events.on("pointerover", function (ev) {
heatLegend.showValue(ev.target.dataItem.get("value"));
});
// Add zoom control
// https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Zoom_control
var zoomControl = chart.set("zoomControl", am5map.ZoomControl.new(root, {}));
zoomControl.homeButton.set("visible", true); // a button that goes back to the home view
{
"type": "MapChart",
"settings": {
"minZoomLevel": 0.5,
"autoHome": true,
"zoomControl": {
"type": "ZoomControl",
"properties": {
"homeButton": {
"settings": {
"visible": true
}
}
}
},
"projectionName": "geoEqualEarth"
},
"properties": {
"series": [
"#series-0",
"#series-1",
"#series-2"
]
},
"children": [
{
"type": "HeatLegend",
"settings": {
"orientation": "vertical",
"startColor": {
"type": "Color",
"value": "#b3b9d9"
},
"endColor": {
"type": "Color",
"value": "#000050"
},
"stepCount": 8,
"x": {
"type": "Percent",
"value": 100
},
"centerX": {
"type": "Percent",
"value": 100
},
"y": {
"type": "Percent",
"value": 10
},
"height": {
"type": "Percent",
"value": 60
},
"paddingRight": 20,
"startValue": 10,
"endValue": 50
},
"properties": {
"startLabel": {
"settings": {
"fontSize": 12
}
},
"endLabel": {
"settings": {
"fontSize": 12
}
}
},
"index": 2
}
],
"refs": [
{
"data-0": [
{
"geometry": {
"type": "GeoRectangle",
"north": 90,
"east": 180,
"south": -90,
"west": -180
},
"__parse": true
}
]
},
{
"data-1": []
},
{
"data-2": [
{
"id": "CN",
"announced": 34,
"updated": 125,
"__parse": true
},
{
"id": "AT",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "BE",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "BG",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "HR",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "CY",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "CZ",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "DK",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "EE",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "FI",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "FR",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "DE",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "GR",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "HU",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "IE",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "IT",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "LV",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "LT",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "LU",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "MT",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "NL",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "PL",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "PT",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "RO",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "SK",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "SI",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "ES",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "SE",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "VN",
"announced": 46,
"updated": 10,
"__parse": true
},
{
"id": "TW",
"announced": 32,
"updated": 10,
"__parse": true
},
{
"id": "JP",
"announced": 24,
"updated": 10,
"__parse": true
},
{
"id": "IN",
"announced": 26,
"updated": 10,
"__parse": true
},
{
"id": "TH",
"announced": 36,
"updated": 10,
"__parse": true
},
{
"id": "CH",
"announced": 31,
"updated": 10,
"__parse": true
},
{
"id": "ID",
"announced": 32,
"updated": 10,
"__parse": true
},
{
"id": "MY",
"announced": 24,
"updated": 10,
"__parse": true
},
{
"id": "KH",
"announced": 49,
"updated": 10,
"__parse": true
},
{
"id": "GB",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "ZA",
"announced": 30,
"updated": 10,
"__parse": true
},
{
"id": "BR",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BD",
"announced": 37,
"updated": 10,
"__parse": true
},
{
"id": "SG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "IL",
"announced": 17,
"updated": 10,
"__parse": true
},
{
"id": "PH",
"announced": 17,
"updated": 10,
"__parse": true
},
{
"id": "CL",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AU",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "PK",
"announced": 29,
"updated": 10,
"__parse": true
},
{
"id": "TR",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "LK",
"announced": 44,
"updated": 10,
"__parse": true
},
{
"id": "CO",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "PE",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "NI",
"announced": 18,
"updated": 10,
"__parse": true
},
{
"id": "NO",
"announced": 15,
"updated": 10,
"__parse": true
},
{
"id": "CR",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "JO",
"announced": 20,
"updated": 10,
"__parse": true
},
{
"id": "DO",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AE",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "NZ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AR",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "EC",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GT",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "HN",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MG",
"announced": 47,
"updated": 10,
"__parse": true
},
{
"id": "MM",
"announced": 44,
"updated": 10,
"__parse": true
},
{
"id": "TN",
"announced": 28,
"updated": 10,
"__parse": true
},
{
"id": "KZ",
"announced": 27,
"updated": 10,
"__parse": true
},
{
"id": "RS",
"announced": 37,
"updated": 10,
"__parse": true
},
{
"id": "EG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SA",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SV",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BW",
"announced": 37,
"updated": 10,
"__parse": true
},
{
"id": "TT",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MA",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "DZ",
"announced": 30,
"updated": 10,
"__parse": true
},
{
"id": "OM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "UY",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BS",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "LS",
"announced": 50,
"updated": 10,
"__parse": true
},
{
"id": "UA",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BH",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "QA",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MU",
"announced": 40,
"updated": 10,
"__parse": true
},
{
"id": "FJ",
"announced": 32,
"updated": 10,
"__parse": true
},
{
"id": "IS",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "KE",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "LI",
"announced": 37,
"updated": 10,
"__parse": true
},
{
"id": "GY",
"announced": 38,
"updated": 10,
"__parse": true
},
{
"id": "HT",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BA",
"announced": 35,
"updated": 10,
"__parse": true
},
{
"id": "NG",
"announced": 14,
"updated": 10,
"__parse": true
},
{
"id": "NA",
"announced": 21,
"updated": 10,
"__parse": true
},
{
"id": "BO",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "PA",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "VE",
"announced": 15,
"updated": 10,
"__parse": true
},
{
"id": "MK",
"announced": 33,
"updated": 10,
"__parse": true
},
{
"id": "ET",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GH",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MD",
"announced": 31,
"updated": 10,
"__parse": true
},
{
"id": "AO",
"announced": 32,
"updated": 10,
"__parse": true
},
{
"id": "JM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MZ",
"announced": 16,
"updated": 10,
"__parse": true
},
{
"id": "PY",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "ZM",
"announced": 17,
"updated": 10,
"__parse": true
},
{
"id": "LB",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CD",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BF",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CI",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TZ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "IQ",
"announced": 39,
"updated": 10,
"__parse": true
},
{
"id": "GE",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SN",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AZ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CM",
"announced": 11,
"updated": 10,
"__parse": true
},
{
"id": "UG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AL",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "NP",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GA",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "KW",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SR",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BZ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "PG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MW",
"announced": 17,
"updated": 10,
"__parse": true
},
{
"id": "LR",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "VG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AF",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "ZW",
"announced": 18,
"updated": 10,
"__parse": true
},
{
"id": "BJ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BB",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MC",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "UZ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "DJ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "PF",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "KY",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CW",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "VU",
"announced": 22,
"updated": 10,
"__parse": true
},
{
"id": "RW",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SL",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MN",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SZ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MH",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "PM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "KN",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GD",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SD",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TC",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AW",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "ME",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "KG",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "YE",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "VC",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "NE",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "LC",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "NR",
"announced": 30,
"updated": 10,
"__parse": true
},
{
"id": "GQ",
"announced": 13,
"updated": 10,
"__parse": true
},
{
"id": "LY",
"announced": 31,
"updated": 10,
"__parse": true
},
{
"id": "WS",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GN",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TL",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MS",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TD",
"announced": 13,
"updated": 10,
"__parse": true
},
{
"id": "ML",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MV",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TJ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CV",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BI",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GP",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "BT",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MQ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TO",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "MR",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "DM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GF",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CX",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AD",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CF",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SB",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "YT",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "AI",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CC",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "ER",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "CK",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SS",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "KM",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "KI",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "NF",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GI",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TV",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "IO",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "TK",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "GW",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "SJ",
"announced": 10,
"updated": 10,
"__parse": true
},
{
"id": "RE",
"announced": 10,
"updated": 10,
"__parse": true
}
]
},
{
"template-0": {
"type": "Template",
"settings": {
"tooltipText": "{name}: {value}",
"fill": {
"type": "Color",
"value": "#d8d8d8"
},
"stroke": "@root.interfaceColors.get('background')"
}
}
},
{
"series-0": {
"type": "MapPolygonSeries",
"settings": {
"affectsBounds": false
},
"properties": {
"data": "#data-0",
"mapPolygons": {
"properties": {
"template": {
"settings": {
"fill": "@root.interfaceColors.get('alternativeBackground')",
"fillOpacity": 0.05,
"strokeOpacity": 0
}
}
}
}
}
}
},
{
"series-1": {
"type": "GraticuleSeries",
"settings": {
"step": 10
},
"properties": {
"mapLines": {
"properties": {
"template": {
"settings": {
"strokeOpacity": 0.05
}
}
}
}
}
}
},
{
"series-2": {
"type": "MapPolygonSeries",
"settings": {
"geoJSON": "am5geodata_worldLow",
"valueField": "announced",
"calculateAggregates": true,
"heatRules": [
{
"target": "#template-0",
"dataField": "value",
"min": {
"type": "Color",
"value": "#b3b9d9"
},
"max": {
"type": "Color",
"value": "#000050"
},
"key": "fill",
"__parse": true
}
]
},
"properties": {
"data": "#data-2",
"mapPolygons": {
"properties": {
"template": "#template-0"
}
}
}
}
}
],
"root": {
"properties": {
"numberFormatter": {
"settings": {
"numberFormat": "##'%'"
}
},
"interfaceColors": {
"settings": {
"primaryButton": {
"type": "Color",
"value": "#4150a0"
},
"primaryButtonHover": {
"type": "Color",
"value": "#6773b3"
},
"primaryButtonDown": {
"type": "Color",
"value": "#344080"
},
"primaryButtonActive": {
"type": "Color",
"value": "#c6cae3"
}
}
}
}
}
}
