Original size 1140x1600

Исследование футболистов FC24

PROTECT STATUS: not protected
The project is taking part in the competition

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

post

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

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

post

Далее была настроена визуальная стилистика проекта, вдохновленная дизайном интерфейсов самой игры EA Sports FC 24. Чтобы передать атмосферу современного цифрового футбола, использовалась характерная тёмная цветовая схема: глубокий графитовый фон (GRAPHITE_BG) в сочетании с ярким «электрическим» зелёным акцентом (ACCENT_GREEN). Через функцию plt.rcParams.update эти параметры были применены глобально ко всем графикам сразу: были перекрашены оси, текст, сетка и фон, что позволило сохранить единый узнаваемый стиль.

После настройки дизайна производилась загрузка и обработка данных. С помощью команды pd.read_csv был считан файл с характеристиками игроков. Затем из огромной таблицы были отобраны (cols) только самые важные параметры для анализа: имя, возраст, национальность, клуб, рейтинг, потенциал и стоимость. В конце данные были очищены — с помощью метода dropna были удалены игроки с отсутствующей информацией о цене или зарплате, чтобы исключить искажения на графиках.

После общей оценки данных возникла необходимость взглянуть глубже на индивидуальные показатели игроков, чтобы понять, как связаны возраст и талант. Простая таблица или средние значения не показывают всей картины распределения: где находятся таланты, а где — ветераны футбола.

Поэтому следующим шагом стал анализ взаимосвязи между возрастом и потенциалом (Age vs Potential). Использование диаграммы рассеяния)позволяет увидеть каждый отдельный случай как точку на графике и выявить скрытые закономерности.

Original size 1014x562
post

Первым был построен график Scatter Plot, чтобы визуально оценить связь возраста и потенциала. Для этого использовалась функция sns.scatterplot, которая наносит каждую точку (игрока) на плоскость в зависимости от двух параметров: по оси X отложен возраст, по оси Y — потенциальный рейтинг.

Параметр alpha=0.7 сделал точки полупрозрачными, что позволяет видеть плотность скоплений игроков в одной зоне, а белая обводка (edgecolor="white») добавила контраста на тёмном фоне. Дополнительно была проведена горизонтальная пунктирная линия (plt.axhline) на уровне 85 пунктов рейтинга — она служит визуальным ориентиром, отделяющим элитных игроков мирового уровня от всех остальных.

Рассмотрев взаимосвязь возраста и потенциала становится понятно, в каком соотношение существуют возраст и потенциал. При этом такой график показывает лишь индивидуальные параметры, но не объясняет, откуда родом эти таланты. Чтобы понять, где рождаются такие футболисты, необходимо перейти к анализу географического распределения игроков.

Следующим этапом стало исследование географии футбольного мира, чтобы понять, откуда родом игроки. Для этого была построена столбчатая диаграмма, которая наглядно ранжирует нации по количеству зарегистрированных футболистов в базе данных.

Original size 1163x560
post

Второй график — это столбчатая диаграмма, которая показывает распределение футболистов по странам. Для её построения использовались методы value_counts () и .head (10), чтобы отфильтровать только 10 самых популярных национальностей из базы данных.

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

Этот график визуализирует глобальный дисбаланс рынка: профессиональный футбол, несмотря на свою популярность, всё ещё сильно центрирован вокруг Западной Европы и Южной Америки.

Поняв географическое распределение талантов, логично перейти к вопросу их рыночной оценки. Чтобы разобраться в экономике современного футбола, необходимо проанализировать связь между игровым рейтингом и зарплатой.

Третий график анализирует футболистов. Визуализация демонстрирует ярко выраженную зависимость: рост мастерства даже на пару пунктов в элитной зоне приводит к кратному увеличению доходов.

Original size 1070x563
post

Для третьего графика с помощью метода nlargest (500, ’overall’) из всего массива данных были отобраны только 500 лучших футболистов по рейтингу. Это позволило сфокусировать анализ на элите мирового футбола и избежать визуального шума игроков низших лиг.

Сам график построен функцией sns.scatterplot, где по оси X отложен рейтинг (overall), а по оси Y — зарплата (wage_eur). Размер точек был увеличен (s=80), чтобы акцентировать внимание на каждом отдельном случае. Параметр прозрачности alpha=0.8 помогает увидеть наложения точек, когда несколько игроков имеют одинаковый рейтинг и зарплату, создавая более плотный цвет в популярных диапазонах.

Это подтверждает, что клубы платят огромную «премию за исключительность»: разница в деньгах между просто отличным игроком и мировой звездой гораздо масштабнее, чем разница в их игровых показателях.

Определив, что высокий рейтинг напрямую трансформируется в дорогостоящие интересно определить самых богатых гигантов в индустрии.

Original size 1070x563
post

Четвёртый график — горизонтальная столбчатая диаграмма, показывающая самые дорогие составы мира. Здесь потребовалась агрегация данных: с помощью 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

We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more