← Europechartlink · choropleth
Europe by: NUTS 1 regions · countries · NUTS 2 regions · NUTS 3 regions
Map of Europe by NUTS 1 region, one number per region
Also: Europe map by NUTS 1 region · European regions map · map of Europe by major region · NUTS1 choropleth · EU regions coloured by a value

Example: Population of Europe's NUTS 1 regions, 2025 — Population on 1 January 2025 by NUTS 1 region, from Eurostat's regional demography. North Rhine-Westphalia, Île-de-France and Bavaria lead; the Nordic and Baltic regions are the emptiest. Country borders are drawn on top.
About this template
Data: one row per NUTS 1 region with its NUTS 2024 code (DE2 for Bavaria, FR1 for Île-de-France) or its name — in the local language or in Latin script — and a number. A region with no row stays grey. NUTS 1 is the coarsest level: Germany's Länder, France's regions grouped, Italy's five macro-regions, Poland's seven, and whole countries where the country is small. The NUTS system covers the EU, EFTA and the candidate countries; the United Kingdom, Ukraine, Belarus, Russia and the Caucasus have no regions in it and appear only as surroundings. Country borders are drawn on top. Same design as the other world and continent maps.
A choropleth map of the regions of the "eu-nuts1" geography, each region filled by one number from your data (the "population" column). The borders of the "eu-nuts0" regions are drawn on top of the regions in dark navy blue, 0.5 units wide, so the finer regions read inside their larger units. The view is cropped to longitude -10–44.5 and latitude 34–71.
A sequential colour scale from pale blue for the smallest values to deep navy blue for the largest; pinned to 500000 to 12000000, so values beyond the ends take the end colour and the colour bar says ≤ and ≥; a gradient colour bar below the map, with its labels underneath; values formatted in compact form (1.2k, 3.4M), 1 decimal; on a white canvas (#ffffff) with near-black text — a light theme; 0.5-unit hairline outlines between regions.
The title and description are left-aligned above the chart. Font: Inter (the default); a source line with a link sits at the bottom, with the chartlink badge in the corner.
Data: 2 columns — region (string, "NUTS 1 region (code or name)"), population (number, "Population, 1 January 2025") — and 112 rows in the example "Population of Europe's NUTS 1 regions, 2025". Regions are named by ISO 3166-2 region codes or region names; a region with no row stays unfilled in grey, and an unknown code fails loudly with the nearest matches. Your data keeps the same column ids and every other setting comes from the template; an agent can change any of them.
Other looks of this template — dark (on a dark canvas): ast_gw8kuBsjoXBHQqX3YWxHL; buckets (with the values in classes and a swatch legend): ast_2b6IC2bKx0UwcVqGZOWfE; editorial (in the editorial house style — serif type on paper, a green ramp): ast_I3lukl2888ysQapfJag7X; categories (with a text category per region and a swatch legend): ast_jhynugTMA2gOQCuaniJ7W; buckets-dark (with the values in classes and a swatch legend, on a dark canvas): ast_u7sZvwI8PE8O3VkjXZ5Ad; surroundings (with the land around the place drawn in grey): ast_j07Zx3N1WX0v3DvYX2cpB; categories-dark (with a text category per region and a swatch legend, on a dark canvas): ast_ayfZUSPwqZMOl6wqU4CdA; buckets-editorial (with the values in classes and a swatch legend, in the editorial house style — serif type on paper, a green ramp): ast_ScYOfvmPZsTfdaXr910fi; dark-surroundings (on a dark canvas, with the land around the place drawn in grey): ast_sWHhzYzF66ROIFio7symL; buckets-surroundings (with the values in classes and a swatch legend, with the land around the place drawn in grey): ast_fGM1Q0TSXdPbX2yVKhUMx; categories-editorial (with a text category per region and a swatch legend, in the editorial house style — serif type on paper, a green ramp): ast_m6gJWX2x2sykkVEpGyLhP; editorial-surroundings (in the editorial house style — serif type on paper, a green ramp, with the land around the place drawn in grey): ast_q4XS6X35o29zxD8uIdXyY; categories-surroundings (with a text category per region and a swatch legend, with the land around the place drawn in grey): ast_pHKCM9NqBGjYmfTVpQVhv; buckets-dark-surroundings (with the values in classes and a swatch legend, on a dark canvas, with the land around the place drawn in grey): ast_wlQYeS8za5ivJbDCAHzw8; categories-dark-surroundings (with a text category per region and a swatch legend, on a dark canvas, with the land around the place drawn in grey): ast_K22gWx16HgVyO55O6BFPu; buckets-editorial-surroundings (with the values in classes and a swatch legend, in the editorial house style — serif type on paper, a green ramp, with the land around the place drawn in grey): ast_uG02ZEjKeSSW0PIto7l7G; categories-editorial-surroundings (with a text category per region and a swatch legend, in the editorial house style — serif type on paper, a green ramp, with the land around the place drawn in grey): ast_y5x3dGrtCs28VAcf3floI. On the page, switch with the toggles; an agent passes that id as the template instead.
Use it with your agent
Copy the prompt, paste it into Claude, ChatGPT, Cursor or any agent with the chartlink MCP server or API, and give it your numbers. It rebuilds this exact design with your data and hands back an embed, a PNG and a page.
The prompt in full
Data this template expects
| column id | type | in the example |
|---|---|---|
| region | string | NUTS 1 region (code or name) |
| population | number | Population, 1 January 2025 |
112 rows in the example. Your data keeps these column ids; everything else about the chart comes from the template.
For agents: the API call
POST https://chartlink.app/api/assets
{
"template": "ast_pcUGonWAuhzKq7wrfQyn3",
"knobs": {
"theme": "light",
"dataType": "gradient",
"title": {
"text": "Your title"
},
"source": {
"text": "Where the numbers come from"
}
},
"data": {
"columns": [
{
"id": "region",
"type": "string"
},
{
"id": "population",
"type": "number"
}
],
"rows": [
[
"…"
]
]
},
"publish": true
}The recipe (the template's settings)
{
"chart": {
"bounds": [
-10,
34,
44.5,
71
],
"domain": [
500000,
12000000
],
"format": {
"kind": "number",
"compact": true,
"decimals": 1
},
"borders": {
"color": "#1f2937",
"width": 0.5,
"geography": "eu-nuts0"
},
"outline": {
"width": 0.5
},
"geography": "eu-nuts1"
},
"title": {
"text": "Population of Europe's NUTS 1 regions, 2025"
},
"preset": "map-light",
"source": {
"url": "https://ec.europa.eu/eurostat/databrowser/view/demo_r_pjanaggr3/default/table",
"text": "Eurostat, population on 1 January by NUTS region (demo_r_pjanaggr3), 2025"
},
"encoding": {
"value": {
"column": "population"
},
"region": {
"column": "region"
}
},
"description": {
"text": "Population on 1 January 2025 by NUTS 1 region, from Eurostat's regional demography. North Rhine-Westphalia, Île-de-France and Bavaria lead; the Nordic and Baltic regions are the emptiest. Country borders are drawn on top."
}
}map · choropleth · europe · nuts-1 · regions · world-set
Similar templates
- Map of Europe by NUTS 3 region, one number per region
- Map of Europe by NUTS 2 region, one number per region
- Map of Europe by country, one number per country
- Map of Slovakia by region, one number per region
- Map of Greece by region, one number per region
- Map of Ireland by region, one number per region
- Map of Finland by region, one number per region
- Map of Czechia by region, one number per region
- All templates →