Перехватываю эстафетную палочку у Артёма.

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

А если исходные данные дополнить процентными долями внутрилиговых переходов, мы сразу увидим все те выводы, которые озвучивает автор инфографики:

Кто‑то скажет, что инфографика выглядит эффектнее таблицы. Но для меня визуализация данных, которые и без этого можно окинуть взглядом, не имеет смысла. Уважаемый советчик предлагает «упростить» диаграмму, чтобы она стала менее запутанной, как будто сложность и запутанность идут рука об руку. На самом деле, сложность ≠ запутанность, можно запутать относительно простые данные (яркий пример тому — исходная диаграмма), а можно сложные данные показать понятно и наглядно.

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

Реальность данных

Итак, первый шаг алгоритма Δλ — описать реальность данных, то есть полную картину процессов, которые порождают исходные данные. Для нашей задачи реальность данных будет звучать примерно так.

«В профессиональном футболе игроки разной национальности, пола и возраста заключают контракты на разную зарплату с командам разных дивизионов (tiers), играющих в разных лигах разных стран мира. На данный момент по главному футбольному рейтингу топовыми лигами считаются: английская Премьер‑лига, немецкая Бундеслига, испанская Ла Лига, итальянская Серия А и французская Лига 1.

Дважды в год, в межсезонье, когда нет игр, игрок может перейти из одной команды в другую до истечения срока контракта — такой переход называется трансфером (transfer), а период, когда случаются трансферы — трансферным окном. Трансферы позволяют командам переманивать перспективных игроков и избавляться от тех, кто не оправдал ожиданий. При трансфере игрок договаривается с новой командой об условиях, а команды договариваются между собой о компенсации (transfer fee), которую выплачивает приобретающая игрока команда за расторжение ранее заключённого им контракта. Иногда отступные прописаны в исходном контракте, это называется клаусула, тогда новой команде достаточно выплатить их и на этом переговоры заканчиваются. Иногда трансфер происходит без компенсации, по взаимному согласию сторон. Иногда сторонам не удаётся договориться, тогда игрок остаётся в исходной команде.

Помимо постоянных трансферов, существует также аренда игроков (loan transfer), такие трансферы отличаются тем, что по окончании оговоренного срока игрок возвращается в исходную команду. Они используются для «прокачки» молодых игроков, которым не хватает игрового времени во время сезонных игр в сильной команде, для усиления команды, временно потерявшей ключевых игроков из‑за травм, для знакомства в деле с игроком, которому команда хочет предложить постоянное место или чтобы на время пристроить игрока, который по разным причинам не прижился.»

Обратите внимание, как скупо и блёкло после такого описания выглядит анализ переходов исключительно между командами топовых лиг, сколько живого, вкусного, интересного содержания осталось за кадром исходной диаграммы. Я собрала в одной таблице данные о переходах, которые касаются топовых лиг (в топовую лигу, из топовой лиги, или между топовыми лигами), и у меня получилась таблица на 16 столбцов и 2,5 тыс. строк — и это только трансферы сезона 2023/2024. Вот это уже подходящий материал для осмысленной визуализации!

Частица данных и структурная схема

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

Зафиксируем структуру данных на схеме, где покажем все основные сущности, их свойства и связи между ними.

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

Конструирование визуализации

Третий и четвёртый шаги алгоритма Δλ — это конструирование визуализации. Мой подход, о котором я подробно расскажу в будущих советах, отличается от привычного пути использования библиотеки шаблонов. Я не пытаюсь выбрать формат и «запихнуть» в него данные — это верный путь оставить слишком многое за кадром. Я создаю формат визуализации под каждый набор данных, отталкиваясь от частицы данных и её важных свойств.

Визуализация отвечает на вопросы, но только на те, которые можно сформулировать, опираясь на известные параметры данных. Как часто случаются трансферы между командами топовых лиг — один из таких вопросов, ответ на которой мы видели на исходной диаграмме. А какие вопросы можно задать, чтобы более полно отразить реальность данных? Например, из каких лиг и дивизионов игроки попадают в команды топовых лиг, и куда из топовых лиг уходят? Как возраст и стоимость игрока влияют на попадание в топовую лигу и уход из неё? По каким параметра арендные трансферы отличаются от обычных? Как стоимость трансферной компенсации зависит от стоимости и возраста игрока? А как все эти закономерности меняются в зависимости от страны? Связи между командами каких стран наиболее сильны? И так далее.

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

На исходной диаграмме трансферы показаны линиями из одной топ‑лиги в другую. Если каркас составить из значимых количественных параметров — компенсации и стоимости игрока — частицы станут точками:

На этом наброске проявились закономерности: линейная зависимость трансферной компенсации от стоимости игрока для игроков дороже 1 млн евро, более «молодой» цвет графика над диагональю. На графике так же видны аномалии, выбивающиеся из закономерностей. Но нет информации о лигах и дивизионах, которая для нас важна. За счёт чего её можно было бы добавить?

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

Приглашаю уважаемых советчиков предложить идеи разных визуализаций на основе обогащённого датасета. Если вы дружите с Табло, Даталенсом, d3.js или другими инструментами, покажите в комментариях результаты в виде готовых диаграмм со ссылками на их интерактивные версии. Если хотите просто поразмыслить на задачей, нарисуйте идею в любимом графическом редакторе или даже на листочке. Посмотрим, сколько разнообразных идей вы придумаете. А в следующем совете я покажу свой вариант решения :‑)

Визуализация данныхФутбольные трансферы
Отправить
Поделиться
Запинить

Комментарии

Артур Хисматулин

Кажется, от таблички всё‑таки можно уйти. У меня получилось два варианта, первый — это вот такой баббл‑чарт.

Здесь виден и объём внутренних сделок, и в целом можно проследить в каком объёме из каких лиг в таргет‑лигу переходят игроки. Но это более простой вариант, единственное, в чём я сомневаюсь — это количество цифр, но пусть будут точные данные.

21 окт 2023
Артур Хисматулин

Второй вариант — более усложнённый.

Он показывает и объём внутреннего рынка (переходов внутри одной лиги). Так можно сразу углядеть лидера — «СериАл» =)

Справа можно увидеть сделки с внешними лигами, причём сразу и in, и out. То есть можно понять кто в целом больше закупается/продаёт у европейских топ‑5 соседей. Может, числа в целом у подписей справа и не нужны, но, опять же, мы же любим точность, да?)

21 окт 2023

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

Вторая диаграмма информативнее, но ей недостаёт наглядности. Всё‑таки речь о потоках «из» и «в», исходный формат для такого рода данных работает лучше. А вашу диаграмму приходится расшифровывать. Ещё вы разделили «Domestic Deals» и «External Market» и показываете их по‑разному, это увеличивает сложность интерпретации. Старайтесь данные одной природы показывать одинаково, а если нужно подсветить проценты, покажите их дополнительно, а не вместо столбиков‑трансферов.

Из хорошего отмечу цветовое кодирование, у меня ваши цвета больше ассоциируются с лигами, особенно Premier League, LaLiga и Bundesliga. Цвет — мощный способ наглядно передать реальность данных, и у вас это получается лучше, чем на исходной диаграмме (там цвета вообще не связаны со странами и взяты от балды как будто).

1 ноя 2023
Артур Хисматулин

Татьяна, спасибо за ответ! Что касается подписей на первом визе: согласен, стоило подписать, но вот что касается менее информативной — не могу согласиться, в целом как раз показаны объемы рынка каждой отдельной лиги. Может быть, конечно, стоило рядом или донатом поверх баббла основной лиги нарисовать все трансферы на выход, но, опять же, подписать. И первый виз — он скорее про «откуда и куда».

Второй же более комплексный, как по мне, но в целом здесь основная идея была показать те выводы, которые вы делаете в первой статье, про объёмы рынка и соотношение как раз трансферов и «закрытость» лиг. Что касается по‑разному показанных внутренних и внешних трансферов —длины одинаковы, просто полосы местных трансферов — они шире для того, чтобы можно было визуально причислить из к обеим категориям (на выход и на вход) Думал ещё над более традиционным вариантом показать внутренние и внешние трансферы отдельно, как в divine charts (не помню как это точно называется в Datawrapper), но отказался от этого варианта, чтобы было где показать и добавить инфу о процентном соотношении таких трансферов. Хотя возможно их вообще стоило показать пайчартами, но они были бы слишком внезапными.

Но да, приходится читать/расшифровывать, но тут скорее было желание сохранить эффект «впу, надо открыть исследование»

А о цветах даже у меня сомнения, потому что я сам удивился увидев новые логотипы Серии А и Лиги1.

1 ноя 2023

Рекомендуем другие советы