
Для выполнения проекта была выбрана тема, основанная на данных о профессиональных футболистах из EA Sports FC 24. Этот набор данных является одним из самых полных и структурированных в спортивной аналитике, что делает его удобным для глубокого анализа и визуализации. Кроме того, база содержит множество характеристик — от возраста и рейтинга до стоимости и потенциала, что позволяет исследовать неочевидные связи и строить разнообразные графики. Такой формат позволяет совместить хобби с аналитикой, превратив изучение статистики в наглядное исследование рынка игроков и клубных стратегий.

В начале работы были подключены необходимые инструменты для анализа. Использовалась библиотека Pandas (обозначенная как pd), которая отвечает за обработку таблиц. С её помощью данные загружались, фильтровались и структурировались для дальнейшей работы.
Для визуализации результатов применялась библиотека Seaborn (как sns), которая позволяет строить сложные статистические графики в современном дизайне одной строкой кода. В связке с ней использовался модуль pyplot из библиотеки Matplotlib (как plt), который служил базой для настройки внешнего вида графиков — через него задавались размеры изображений, корректировались подписи и управлялись общие параметры отображения.

Далее была настроена визуальная стилистика проекта, вдохновленная дизайном интерфейсов самой игры EA Sports FC 24. Чтобы передать атмосферу современного цифрового футбола, использовалась характерная тёмная цветовая схема: глубокий графитовый фон (GRAPHITE_BG) в сочетании с ярким «электрическим» зелёным акцентом (ACCENT_GREEN). Через функцию plt.rcParams.update эти параметры были применены глобально ко всем графикам сразу: были перекрашены оси, текст, сетка и фон, что позволило сохранить единый узнаваемый стиль.
После настройки дизайна производилась загрузка и обработка данных. С помощью команды pd.read_csv был считан файл с характеристиками игроков. Затем из огромной таблицы были отобраны (cols) только самые важные параметры для анализа: имя, возраст, национальность, клуб, рейтинг, потенциал и стоимость. В конце данные были очищены — с помощью метода dropna были удалены игроки с отсутствующей информацией о цене или зарплате, чтобы исключить искажения на графиках.
После общей оценки данных возникла необходимость взглянуть глубже на индивидуальные показатели игроков, чтобы понять, как связаны возраст и талант. Простая таблица или средние значения не показывают всей картины распределения: где находятся таланты, а где — ветераны футбола.
Поэтому следующим шагом стал анализ взаимосвязи между возрастом и потенциалом (Age vs Potential). Использование диаграммы рассеяния)позволяет увидеть каждый отдельный случай как точку на графике и выявить скрытые закономерности.

Первым был построен график Scatter Plot, чтобы визуально оценить связь возраста и потенциала. Для этого использовалась функция sns.scatterplot, которая наносит каждую точку (игрока) на плоскость в зависимости от двух параметров: по оси X отложен возраст, по оси Y — потенциальный рейтинг.
Параметр alpha=0.7 сделал точки полупрозрачными, что позволяет видеть плотность скоплений игроков в одной зоне, а белая обводка (edgecolor="white») добавила контраста на тёмном фоне. Дополнительно была проведена горизонтальная пунктирная линия (plt.axhline) на уровне 85 пунктов рейтинга — она служит визуальным ориентиром, отделяющим элитных игроков мирового уровня от всех остальных.
Рассмотрев взаимосвязь возраста и потенциала становится понятно, в каком соотношение существуют возраст и потенциал. При этом такой график показывает лишь индивидуальные параметры, но не объясняет, откуда родом эти таланты. Чтобы понять, где рождаются такие футболисты, необходимо перейти к анализу географического распределения игроков.
Следующим этапом стало исследование географии футбольного мира, чтобы понять, откуда родом игроки. Для этого была построена столбчатая диаграмма, которая наглядно ранжирует нации по количеству зарегистрированных футболистов в базе данных.

Второй график — это столбчатая диаграмма, которая показывает распределение футболистов по странам. Для её построения использовались методы value_counts () и .head (10), чтобы отфильтровать только 10 самых популярных национальностей из базы данных.
Визуализация построена через функцию sns.barplot, где по горизонтали отложено количество игроков, а по вертикали — названия стран. Был использован тот же фирменный зелёный цвет (color=ACCENT_GREEN), чтобы сохранить стилевое единство с предыдущими графиками. Важная деталь кода — plt.ylabel (None): была убрана подпись оси Y (слова «nationality_name»), так как названия стран (England, Spain) говорят сами за себя, и лишний текст только загромождал бы инфографику.
Этот график визуализирует глобальный дисбаланс рынка: профессиональный футбол, несмотря на свою популярность, всё ещё сильно центрирован вокруг Западной Европы и Южной Америки.
Поняв географическое распределение талантов, логично перейти к вопросу их рыночной оценки. Чтобы разобраться в экономике современного футбола, необходимо проанализировать связь между игровым рейтингом и зарплатой.
Третий график анализирует футболистов. Визуализация демонстрирует ярко выраженную зависимость: рост мастерства даже на пару пунктов в элитной зоне приводит к кратному увеличению доходов.

Для третьего графика с помощью метода nlargest (500, ’overall’) из всего массива данных были отобраны только 500 лучших футболистов по рейтингу. Это позволило сфокусировать анализ на элите мирового футбола и избежать визуального шума игроков низших лиг.
Сам график построен функцией sns.scatterplot, где по оси X отложен рейтинг (overall), а по оси Y — зарплата (wage_eur). Размер точек был увеличен (s=80), чтобы акцентировать внимание на каждом отдельном случае. Параметр прозрачности alpha=0.8 помогает увидеть наложения точек, когда несколько игроков имеют одинаковый рейтинг и зарплату, создавая более плотный цвет в популярных диапазонах.
Это подтверждает, что клубы платят огромную «премию за исключительность»: разница в деньгах между просто отличным игроком и мировой звездой гораздо масштабнее, чем разница в их игровых показателях.
Определив, что высокий рейтинг напрямую трансформируется в дорогостоящие интересно определить самых богатых гигантов в индустрии.

Четвёртый график — горизонтальная столбчатая диаграмма, показывающая самые дорогие составы мира. Здесь потребовалась агрегация данных: с помощью groupby (’club_name’)[’value_eur’].sum (). Были сгруппированны все игроки по клубам и сложили их стоимости. Затем полученный результат отсортировали по убыванию (sort_values) и взяли топ-10 (head (10)).
Важная деталь — деление на миллион (/ 1_000_000), чтобы цифры на графике были читаемыми (например, «800» вместо «800000000»). Визуализация построена через sns.barplot, но оси поменяли местами (x — стоимость, y — клубы), чтобы названия команд располагались горизонтально и легко читались. Заголовки и подписи осей также стилизованы под общий дизайн-код проекта.
Этот график наглядно показывает, что современный футбол — это не только спорт, но и соревнование бюджетов, где побеждает тот, кто может собрать самую дорогую коллекцию талантов.
Полученные визуализации помогают лучше понять структуру футбольного рынка, где возраст, талант и деньги тесно переплетены. Этот анализ делает сложные данные наглядными, помогая не только глубже понять механизмы оценки игроков и финансовую стратегию топ-клубов, но и использовать эти инсайты в самой игре — например, для грамотного скаутинга молодых талантов в режиме карьеры или оптимизации бюджета команды.
Использованные ресурсы: Нейросеть Gemini 3 Pro — для решения ошибок и консультации по поводу возможностей тех или иных библиотек.
Папка с датасетом и кодом: https://disk.yandex.com/d/43lPwn_YkWc_iA