generated from com-480-data-visualization/com-480-project-template
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
acd2e5c
commit e06658b
Showing
547 changed files
with
5,609 additions
and
2,290 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,213 @@ | ||
<!DOCTYPE html> | ||
<html lang="en"> | ||
<head> | ||
<title>Dashboard</title> | ||
<script src="https://cdn.polyfill.io/v2/polyfill.min.js"></script> | ||
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/6.7.0/d3.min.js"></script> | ||
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> | ||
<link rel="stylesheet" href="css/style.css"> | ||
<style> | ||
body { | ||
margin: 0; | ||
padding: 0; | ||
display: flex; | ||
flex-direction: column; | ||
align-items: center; | ||
} | ||
|
||
section { | ||
width: 100%; | ||
max-width: 1200px; | ||
padding: 20px; | ||
box-sizing: border-box; | ||
} | ||
|
||
#football-field { | ||
width: 100%; | ||
height: 0; | ||
padding-bottom: 56.25%; /* 16:9 aspect ratio */ | ||
position: relative; | ||
margin-bottom: 20px; | ||
background: url('website_pic/football_pitch2.png') no-repeat center center; | ||
background-size: contain; | ||
} | ||
|
||
.player-card { | ||
position: absolute; | ||
width: 10%; /* Adjusted size */ | ||
height: 22%; /* Adjusted size */ | ||
text-align: center; | ||
} | ||
|
||
.card-background { | ||
width: 100%; | ||
height: 100%; | ||
position: absolute; | ||
top: 5px; /* Moved up by 5px */ | ||
left: 0; | ||
} | ||
|
||
.player-image { | ||
width: 70%; /* Adjusted size */ | ||
height: 60%; /* Adjusted size */ | ||
position: absolute; | ||
top: 10px; /* Adjusted position */ | ||
left: 15%; /* Adjusted position */ | ||
} | ||
|
||
.player-name { | ||
position: relative; | ||
width: 100%; | ||
top: 70%; /* Adjusted position to move it up */ | ||
font-size: 12px; /* Adjust as needed */ | ||
font-weight: bold; | ||
color: black; /* Changed to black */ | ||
} | ||
|
||
.label-white { | ||
color: white; | ||
font-size: 20px; | ||
} | ||
</style> | ||
</head> | ||
<body> | ||
|
||
<section> | ||
<div> | ||
<strong class="label-white">Select the League:</strong> | ||
<label for="filter-comp"></label> | ||
<select id="filter-comp"> | ||
<option value="all">All competitions</option> | ||
<option value="La Liga">La Liga</option> | ||
<option value="Serie A">Serie A</option> | ||
<option value="Bundesliga">Bundesliga</option> | ||
<option value="Ligue 1">Ligue 1</option> | ||
<option value="Premier League">Premier League</option> | ||
</select> | ||
</div> | ||
<div id="football-field"></div> | ||
</section> | ||
|
||
<script> | ||
const tooltip = d3.select("body").append("div") | ||
.attr("class", "tooltip") | ||
.style("position", "absolute") | ||
.style("background", "#f4f4f4") | ||
.style("padding", "5px") | ||
.style("border", "1px solid #ddd") | ||
.style("border-radius", "3px") | ||
.style("pointer-events", "none") | ||
.style("opacity", 0) | ||
.style("transition", "opacity 0.2s"); | ||
const positions = [ | ||
{ x: 15, y: 40 }, // Goalkeeper | ||
{ x: 32, y: 8 }, // Left Back | ||
{ x: 25, y: 28 }, // Center Back Left | ||
{ x: 25, y: 52 }, // Center Back Right | ||
{ x: 32, y: 72 }, // Right Back | ||
{ x: 50, y: 20 }, // Midfielder Left | ||
{ x: 40, y: 40 }, // Midfielder Center | ||
{ x: 50, y: 60 }, // Midfielder Right | ||
{ x: 65, y: 10 }, // Forward Left | ||
{ x: 70, y: 40 }, // Forward Center Left | ||
{ x: 65, y: 70 }, // Forward Center Right | ||
]; | ||
|
||
d3.json("data/finalPlayerDf.json").then((json) => { | ||
data = json; | ||
update(data); | ||
}); | ||
|
||
function selectBestPlayersByPosition(data, positions, count) { | ||
const filteredPlayers = data.filter(player => { | ||
const positionsPlayed = player['Best Position_fifa'].split(','); | ||
return positions.some(position => positionsPlayed.includes(position)); | ||
}); | ||
|
||
const sortedPlayers = filteredPlayers.sort((a, b) => b['overall_metric'] - a['overall_metric']); | ||
const selectedPlayers = sortedPlayers.slice(0, count); | ||
|
||
return selectedPlayers; | ||
} | ||
|
||
function computeBestTeam(data, league) { | ||
var filtered_data; | ||
if (league !== 'all') { | ||
filtered_data = data.filter((d) => d['Comp'] === league); | ||
} else { | ||
filtered_data = data; | ||
} | ||
|
||
let best_GK = selectBestPlayersByPosition(filtered_data, ['GK'], 1); | ||
let best_LB = selectBestPlayersByPosition(filtered_data, ['LB'], 1); | ||
let best_CB = selectBestPlayersByPosition(filtered_data, ['CB'], 2); | ||
let best_RB = selectBestPlayersByPosition(filtered_data, ['RB'], 1); | ||
let best_CM = selectBestPlayersByPosition(filtered_data, ['CM'], 1); | ||
let best_CDM = selectBestPlayersByPosition(filtered_data, ['CDM'], 1); | ||
let best_CAM = selectBestPlayersByPosition(filtered_data, ['CAM'], 1); | ||
let best_LW = selectBestPlayersByPosition(filtered_data, ['LW','LM'], 1); | ||
let best_ST = selectBestPlayersByPosition(filtered_data, ['ST','CF'], 1); | ||
let best_RW = selectBestPlayersByPosition(filtered_data, ['RW','RM'], 1); | ||
return [...best_GK, ...best_LB, ...best_CB, ...best_RB, ...best_CM, ...best_CDM, ...best_CAM, ...best_LW, ...best_ST, ...best_RW]; | ||
} | ||
|
||
function update(data) { | ||
var best = computeBestTeam(data, d3.select("#filter-comp").node().value); | ||
console.log(best); | ||
|
||
const field = d3.select("#football-field"); | ||
|
||
field.selectAll(".player-card").remove(); | ||
|
||
best.forEach((player, index) => { | ||
if (index < positions.length) { | ||
const card = field.append("div") | ||
.attr("class", "player-card") | ||
.style("left", positions[index].x + "%") | ||
.style("top", positions[index].y + "%"); | ||
|
||
card.append("img") | ||
.attr("src", "data/blank_card.png") // Path to your blank card background image | ||
.attr("class", "card-background"); | ||
|
||
card.append("img") | ||
.attr("src", "data/players_images/" + player['Player'] + ".png") // Path to your player images | ||
.attr("class", "player-image"); | ||
|
||
card.append("div") | ||
.attr("class", "player-name") | ||
.text(player['Player']); | ||
// Add tooltip interactivity | ||
card.on("mouseover", function(event, d) { | ||
tooltip.transition().style("opacity", .9); | ||
tooltip.html(` | ||
${player['Player']} (${player['Squad']}) <br> | ||
rating: ${player['overall_metric']} <br> | ||
goals: ${player['Goals']}`) | ||
.style("left", (event.pageX + 5) + "px") | ||
.style("top", (event.pageY - 28) + "px"); | ||
}) | ||
.on("mouseout", function() { | ||
tooltip.transition().style("opacity", 0); | ||
}) | ||
.on("mousemove", function(event) { | ||
tooltip.style("left", (event.pageX + 5) + "px") | ||
.style("top", (event.pageY - 28) + "px"); | ||
}); | ||
} | ||
}); | ||
} | ||
|
||
d3.select("#filter-comp").on("change", function () { | ||
const selectedComp = d3.select(this).property("value"); | ||
if (selectedComp === "all") { | ||
update(data); | ||
} else { | ||
const filtered_data = data.filter((d) => d['Comp'] === selectedComp); | ||
update(filtered_data); | ||
} | ||
}); | ||
</script> | ||
|
||
</body> | ||
</html> |
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
{ | ||
"Albania": {"lat": 41.1533, "lon": 20.1683}, | ||
"Algeria": {"lat": 28.0339, "lon": 1.6596}, | ||
"Angola": {"lat": -11.2027, "lon": 17.8739}, | ||
"Argentina": {"lat": -38.4161, "lon": -63.6167}, | ||
"Armenia": {"lat": 40.0691, "lon": 45.0382}, | ||
"Australia": {"lat": -25.2744, "lon": 133.7751}, | ||
"Austria": {"lat": 47.5162, "lon": 14.5501}, | ||
"Belgium": {"lat": 50.8503, "lon": 4.3517}, | ||
"Benin": {"lat": 9.3077, "lon": 2.3158}, | ||
"Bolivia": {"lat": -16.2902, "lon": -63.5887}, | ||
"Bosnia and Herzegovina": {"lat": 43.9159, "lon": 17.6791}, | ||
"Brazil": {"lat": -14.2350, "lon": -51.9253}, | ||
"Bulgaria": {"lat": 42.7339, "lon": 25.4858}, | ||
"Burkina Faso": {"lat": 12.2383, "lon": -1.5616}, | ||
"Burundi": {"lat": -3.3731, "lon": 29.9189}, | ||
"Cameroon": {"lat": 7.3697, "lon": 12.3547}, | ||
"Canada": {"lat": 56.1304, "lon": -106.3468}, | ||
"Cape Verde Islands": {"lat": 16.5388, "lon": -23.0418}, | ||
"Central African Republic": {"lat": 6.6111, "lon": 20.9394}, | ||
"Chile": {"lat": -35.6751, "lon": -71.5430}, | ||
"Colombia": {"lat": 4.5709, "lon": -74.2973}, | ||
"Comoros": {"lat": -11.6455, "lon": 43.3333}, | ||
"Congo": {"lat": -0.2280, "lon": 15.8277}, | ||
"Congo DR": {"lat": -4.0383, "lon": 21.7587}, | ||
"Costa Rica": {"lat": 9.7489, "lon": -83.7534}, | ||
"Croatia": {"lat": 45.1000, "lon": 15.2000}, | ||
"Cyprus": {"lat": 35.1264, "lon": 33.4299}, | ||
"Czech Republic": {"lat": 49.8175, "lon": 15.4730}, | ||
"Côte d'Ivoire": {"lat": 7.5399, "lon": -5.5471}, | ||
"Denmark": {"lat": 56.2639, "lon": 9.5018}, | ||
"Dominican Republic": {"lat": 18.7357, "lon": -70.1627}, | ||
"Ecuador": {"lat": -1.8312, "lon": -78.1834}, | ||
"Egypt": {"lat": 26.8206, "lon": 30.8025}, | ||
"England": {"lat": 52.3555, "lon": -1.1743}, | ||
"Equatorial Guinea": {"lat": 1.6508, "lon": 10.2679}, | ||
"Finland": {"lat": 61.9241, "lon": 25.7482}, | ||
"France": {"lat": 46.6034, "lon": 1.8883}, | ||
"Gabon": {"lat": -0.8037, "lon": 11.6094}, | ||
"Gambia": {"lat": 13.4432, "lon": -15.3101}, | ||
"Georgia": {"lat": 42.3154, "lon": 43.3569}, | ||
"Germany": {"lat": 51.1657, "lon": 10.4515}, | ||
"Ghana": {"lat": 7.9465, "lon": -1.0232}, | ||
"Greece": {"lat": 39.0742, "lon": 21.8243}, | ||
"Grenada": {"lat": 12.1165, "lon": -61.6790}, | ||
"Guinea": {"lat": 9.9456, "lon": -9.6966}, | ||
"Guinea Bissau": {"lat": 11.8037, "lon": -15.1804}, | ||
"Haiti": {"lat": 18.9712, "lon": -72.2852}, | ||
"Honduras": {"lat": 15.2000, "lon": -86.2419}, | ||
"Hungary": {"lat": 47.1625, "lon": 19.5033}, | ||
"Iceland": {"lat": 64.9631, "lon": -19.0208}, | ||
"Iran": {"lat": 32.4279, "lon": 53.6880}, | ||
"Israel": {"lat": 31.0461, "lon": 34.8516}, | ||
"Italy": {"lat": 41.8719, "lon": 12.5674}, | ||
"Jamaica": {"lat": 18.1096, "lon": -77.2975}, | ||
"Japan": {"lat": 36.2048, "lon": 138.2529}, | ||
"Kosovo": {"lat": 42.6026, "lon": 20.9020}, | ||
"Luxembourg": {"lat": 49.8153, "lon": 6.1296}, | ||
"Madagascar": {"lat": -18.7669, "lon": 46.8691}, | ||
"Mali": {"lat": 17.5707, "lon": -3.9962}, | ||
"Mexico": {"lat": 23.6345, "lon": -102.5528}, | ||
"Montenegro": {"lat": 42.7087, "lon": 19.3744}, | ||
"Morocco": {"lat": 31.7917, "lon": -7.0926}, | ||
"Mozambique": {"lat": -18.6657, "lon": 35.5296}, | ||
"Netherlands": {"lat": 52.1326, "lon": 5.2913}, | ||
"New Zealand": {"lat": -40.9006, "lon": 174.8860}, | ||
"Nigeria": {"lat": 9.0820, "lon": 8.6753}, | ||
"North Macedonia": {"lat": 41.6086, "lon": 21.7453}, | ||
"Northern Ireland": {"lat": 54.7877, "lon": -6.4923}, | ||
"Norway": {"lat": 60.4720, "lon": 8.4689}, | ||
"Paraguay": {"lat": -23.4425, "lon": -58.4438}, | ||
"Peru": {"lat": -9.1900, "lon": -75.0152}, | ||
"Philippines": {"lat": 12.8797, "lon": 121.7740}, | ||
"Poland": {"lat": 51.9194, "lon": 19.1451}, | ||
"Portugal": {"lat": 39.3999, "lon": -8.2245}, | ||
"Republic of Ireland": {"lat": 53.1424, "lon": -7.6921}, | ||
"Scotland": {"lat": 56.4907, "lon": -4.2026}, | ||
"Senegal": {"lat": 14.4974, "lon": -14.4524}, | ||
"Serbia": {"lat": 44.0165, "lon": 21.0059}, | ||
"Sierra Leone": {"lat": 8.4606, "lon": -11.7799}, | ||
"Slovakia": {"lat": 48.6690, "lon": 19.6990}, | ||
"Slovenia": {"lat": 46.1512, "lon": 14.9955}, | ||
"South Africa": {"lat": -30.5595, "lon": 22.9375}, | ||
"Spain": {"lat": 40.4637, "lon": -3.7492}, | ||
"Suriname": {"lat": 3.9193, "lon": -56.0278}, | ||
"Sweden": {"lat": 60.1282, "lon": 18.6435}, | ||
"Switzerland": {"lat": 46.8182, "lon": 8.2275}, | ||
"Togo": {"lat": 8.6195, "lon": 0.8248}, | ||
"Tunisia": {"lat": 33.8869, "lon": 9.5375}, | ||
"Turkey": {"lat": 38.9637, "lon": 35.2433}, | ||
"Ukraine": {"lat": 48.3794, "lon": 31.1656}, | ||
"United States": {"lat": 37.0902, "lon": -95.7129}, | ||
"Uruguay": {"lat": -32.5228, "lon": -55.7658}, | ||
"Uzbekistan": {"lat": 41.3775, "lon": 64.5853}, | ||
"Venezuela": {"lat": 6.4238, "lon": -66.5897}, | ||
"Wales": {"lat": 52.1307, "lon": -3.7837}, | ||
"Zambia": {"lat": -13.1339, "lon": 27.8493}, | ||
"Zimbabwe": {"lat": -19.0154, "lon": 29.1549} | ||
} |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
File renamed without changes
Binary file not shown.
Binary file not shown.
Binary file not shown.
File renamed without changes
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
File renamed without changes
File renamed without changes
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
File renamed without changes
Oops, something went wrong.
File renamed without changes
File renamed without changes
File renamed without changes
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
File renamed without changes
Oops, something went wrong.
File renamed without changes
Oops, something went wrong.
Diff not rendered.
File renamed without changes
Oops, something went wrong.
Diff not rendered.
File renamed without changes
Oops, something went wrong.
File renamed without changes
Oops, something went wrong.
File renamed without changes
File renamed without changes
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
Oops, something went wrong.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Diff not rendered.
Oops, something went wrong.
File renamed without changes
Diff not rendered.
Oops, something went wrong.
Diff not rendered.
Oops, something went wrong.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
File renamed without changes
File renamed without changes
Oops, something went wrong.
File renamed without changes
Oops, something went wrong.
Diff not rendered.
Diff not rendered.
File renamed without changes
File renamed without changes
Oops, something went wrong.
File renamed without changes
Oops, something went wrong.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
File renamed without changes
Oops, something went wrong.
File renamed without changes
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
File renamed without changes
File renamed without changes
Oops, something went wrong.
File renamed without changes
File renamed without changes
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
Oops, something went wrong.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
[{"Nationality_fifa":"Albania","Counts":11},{"Nationality_fifa":"Algeria","Counts":16},{"Nationality_fifa":"Angola","Counts":2},{"Nationality_fifa":"Argentina","Counts":74},{"Nationality_fifa":"Armenia","Counts":2},{"Nationality_fifa":"Australia","Counts":5},{"Nationality_fifa":"Austria","Counts":28},{"Nationality_fifa":"Belgium","Counts":47},{"Nationality_fifa":"Benin","Counts":3},{"Nationality_fifa":"Bolivia","Counts":1},{"Nationality_fifa":"Bosnia and Herzegovina","Counts":2},{"Nationality_fifa":"Brazil","Counts":71},{"Nationality_fifa":"Bulgaria","Counts":3},{"Nationality_fifa":"Burkina Faso","Counts":4},{"Nationality_fifa":"Burundi","Counts":1},{"Nationality_fifa":"Cameroon","Counts":14},{"Nationality_fifa":"Canada","Counts":5},{"Nationality_fifa":"Cape Verde Islands","Counts":3},{"Nationality_fifa":"Central African Republic","Counts":1},{"Nationality_fifa":"Chile","Counts":9},{"Nationality_fifa":"Colombia","Counts":22},{"Nationality_fifa":"Comoros","Counts":2},{"Nationality_fifa":"Congo","Counts":4},{"Nationality_fifa":"Congo DR","Counts":8},{"Nationality_fifa":"Costa Rica","Counts":3},{"Nationality_fifa":"Croatia","Counts":12},{"Nationality_fifa":"Cyprus","Counts":1},{"Nationality_fifa":"Czech Republic","Counts":6},{"Nationality_fifa":"C\u00f4te d'Ivoire","Counts":24},{"Nationality_fifa":"Denmark","Counts":36},{"Nationality_fifa":"Dominican Republic","Counts":1},{"Nationality_fifa":"Ecuador","Counts":8},{"Nationality_fifa":"Egypt","Counts":4},{"Nationality_fifa":"England","Counts":178},{"Nationality_fifa":"Equatorial Guinea","Counts":1},{"Nationality_fifa":"Finland","Counts":4},{"Nationality_fifa":"France","Counts":327},{"Nationality_fifa":"Gabon","Counts":2},{"Nationality_fifa":"Gambia","Counts":5},{"Nationality_fifa":"Georgia","Counts":3},{"Nationality_fifa":"Germany","Counts":209},{"Nationality_fifa":"Ghana","Counts":26},{"Nationality_fifa":"Greece","Counts":3},{"Nationality_fifa":"Grenada","Counts":1},{"Nationality_fifa":"Guinea","Counts":5},{"Nationality_fifa":"Guinea Bissau","Counts":2},{"Nationality_fifa":"Haiti","Counts":1},{"Nationality_fifa":"Honduras","Counts":3},{"Nationality_fifa":"Hungary","Counts":5},{"Nationality_fifa":"Iceland","Counts":1},{"Nationality_fifa":"Iran","Counts":2},{"Nationality_fifa":"Israel","Counts":2},{"Nationality_fifa":"Italy","Counts":179},{"Nationality_fifa":"Jamaica","Counts":7},{"Nationality_fifa":"Japan","Counts":16},{"Nationality_fifa":"Kosovo","Counts":6},{"Nationality_fifa":"Luxembourg","Counts":3},{"Nationality_fifa":"Madagascar","Counts":1},{"Nationality_fifa":"Mali","Counts":24},{"Nationality_fifa":"Mexico","Counts":7},{"Nationality_fifa":"Montenegro","Counts":1},{"Nationality_fifa":"Morocco","Counts":29},{"Nationality_fifa":"Mozambique","Counts":1},{"Nationality_fifa":"Netherlands","Counts":58},{"Nationality_fifa":"New Zealand","Counts":2},{"Nationality_fifa":"Nigeria","Counts":25},{"Nationality_fifa":"North Macedonia","Counts":2},{"Nationality_fifa":"Northern Ireland","Counts":3},{"Nationality_fifa":"Norway","Counts":19},{"Nationality_fifa":"Paraguay","Counts":4},{"Nationality_fifa":"Peru","Counts":2},{"Nationality_fifa":"Philippines","Counts":1},{"Nationality_fifa":"Poland","Counts":18},{"Nationality_fifa":"Portugal","Counts":59},{"Nationality_fifa":"Republic of Ireland","Counts":11},{"Nationality_fifa":"Scotland","Counts":23},{"Nationality_fifa":"Senegal","Counts":30},{"Nationality_fifa":"Serbia","Counts":1},{"Nationality_fifa":"Sierra Leone","Counts":1},{"Nationality_fifa":"Slovakia","Counts":7},{"Nationality_fifa":"Slovenia","Counts":3},{"Nationality_fifa":"South Africa","Counts":1},{"Nationality_fifa":"Spain","Counts":259},{"Nationality_fifa":"Suriname","Counts":1},{"Nationality_fifa":"Sweden","Counts":19},{"Nationality_fifa":"Switzerland","Counts":26},{"Nationality_fifa":"Togo","Counts":3},{"Nationality_fifa":"Tunisia","Counts":6},{"Nationality_fifa":"Turkey","Counts":10},{"Nationality_fifa":"Ukraine","Counts":8},{"Nationality_fifa":"United States","Counts":17},{"Nationality_fifa":"Uruguay","Counts":26},{"Nationality_fifa":"Uzbekistan","Counts":1},{"Nationality_fifa":"Venezuela","Counts":3},{"Nationality_fifa":"Wales","Counts":15},{"Nationality_fifa":"Zambia","Counts":3},{"Nationality_fifa":"Zimbabwe","Counts":3}] |
Oops, something went wrong.