Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 2 months, 2 weeks ago
Новые и перспективные Web3 игры с добычей токенов.
Чат: https://t.me/Crypto_Wolf_Chat
Правила чата смотрите в описании чата.
Все свои вопросы направляйте в чат или главному модератору чата: @Exudna_118
По теме сотрудничества: @Zombini
Last updated 2 months ago
Хоккей и призрачное сердце
Меньше чем через месяц стартует сезон КХЛ, а через полтора месяца - сезон NHL. Для командного спорта интересно искать паттерны на большом объеме данных. Интересно, что хоккейная площадка в Северной Америке уже на 4 метра и длиннее на метр, чем в Европе, что сыграло существенную роль на манере игры.
Виз 'When the Ice Melts' делал давно. Там собраны данные за 9 сезонов по регулярным матчам NHL и плейофф. Данные с kaggle, собраны с espn.com.
В датасете более 1 800 000 действий (actions) на площадке с их координатами X и Y. Например, в категории 'Goals' каждая точка - координата точки на площадке, с которой был забит гол. Цвет показывает количество действий с одной пары координат. Получаются тепловые карты (хитмапы), отображающие интенсивность действий на площадке. На визуализациях хитмапов слева - ворота команды, справа - ворота противника.
Если взять одну команду в одном сезоне, то событий не хватает до полноценного хитмапа действий на площадке. Поэтому, лучше брать весь сезон или одну команду на протяжении нескольких сезонов.
На хитмапах четко рисуется силуэт сердца у ворот противника. При небольшом количестве данных его не видно, а при увеличении количества данных, силуэт постепенно проступает. Интересно это наблюдать. Наверное, сердце символизирует любовь к игре на льду.
С этим визом связаны две небольшие истории:
История 1. По этой визуализации как-то написал фан 'Toronto Maple Leafs'. Он из Канады, живет в штатах, болеет за Торонто. Каждый год они устраивают мероприятие по поводу старта турнира юниоров. Интересен был его пойнт о том, что такие визуализации можно показывать детям, занимающимся хоккеем, для обучения.
История 2. Есть небольшая команда Vizlib, они делают аддоны и плагины для Qlik. Визуализацию об NHL для Qlik адаптировал Joe Warbington из Vizlib.
Такое нередко случается в дата комьюнити.
С классическими командными спортами вроде понятно как и что трекать и как визуализировать. А вот что с киберспортом? Интересно что-то подобное сделать для Dota 2 или CS 2, пока не понимаю где взять данные.
Еще посетила мысль, что хоккей существует, в том числе, благодаря обратному фазовому переходу первого рода.
Pixar, анимация и Business Intelligence
В инструментах BI не так много внимания уделяется анимации. Для большинства задач она и не нужна - достаточно базовых графиков. Если же посмотреть на визуализацию данных в вебе на js (d3js.org, например, или p5js.org), там часто встречаются анимированные визы. Можно еще Ханса Рослинга вспомнить c базовой базой.
Как-то стало интересно сделать анимацию в Tableau, когда ее не было. 5 лет уже прошло. Получилась такая визуализация о местах в Палате представителей. Там параметром можно управлять номером кадра. При смене визуализации группа точек должна переместиться на новые позиции, соответственно, надо знать начальные координаты, конечные координаты точек, построить прямые между ними и разделить прямые на n-1 отрезков, где n-количество кадров. Подробно я писал про это в статье "Tableau in Motion" у Ken Flerlage.
Визуализация и статья тогда вызвали довольно много внимания у Tableau сообщества; к обсуждению подключились инженеры Tableau. Оказалось что в Tableau уже долго (4 года к тому моменту) работают над анимацией, но это не афишировали. Так мы познакомились с Полом Айзексом (Paul Isaacs).
Пол руководил разработкой анимации в Tableau. До этого он работал в Pixar 8 лет, работал с 3D графикой и делал спецэффекты для фильмов в 80х. Опыт общения с ребятами, которые раньше рисовали космические корабли для Голливуда ('Последний звездный боец' 1984 года и др.), а сейчас перешли в данные, был неоценим. Тогда погрузился в принципы анимации диаграмм, узнал про z-order, перекрытие полигонов и про то, о чем BI инженеры обычно не задумываются. Интересно было то, что в направлении анимации BI работали именно люди с опытом в 3D, 2D моделировании и анимации.
Немного позднее вышла бета, и ее можно было тестировать. Анимация работала. Для ее тестирования попросили сделать несложные 3D модели - получились вертолет и корабль.
Примерно год мы развлекались с особенностями анимации в BI, и с проблемами ее реализации. Через пару версий команда Tableau вывела анимацию на хороший уровень.
К сожалению, в итоге, большой проблемой анимации стало то, что конечным пользователям она не особо была нужна. Salesforce поглотил Tableau, и c каждой следующей версией анимацию урезали. А Пол ушел в Roblox.
Процессы и люди из Pixar оказали огромное влияние на разные бизнесы по всему миру. Про Pixar есть книга "Корпорация гениев". Ее рекомендовали Дима и Игорь Бухманы из Playrix, где я когда-то работал. Их интервью Тинькову в Бизнес-секретах.
Кино и пузыри
Недавно пригласили выступить на Tableau Public User Group. Tableau совместно с imdb.com обновили данные в публичных датасетах о фильмах, поэтому говорили о визуализациях про фильмы и сериалы.
Запись мероприятия 'Data+TV'
Хост - Eric Howard.
Tracy Wong, инженер Salesforce рассказала о новой фиче Tableau Public 'Organize your Vizzes'
David Kelly показал как работать со слоями в своей визуализации о культовом 'Doctor Who'. Я рассказывал о том как делал 'IMDb Top Movies'
Хороший датавиз - тот, который хочешь повесить на стену. Это правило классно работает для датаарта и небизнесовых визуализаций. Пузыри (bubbles) в визуализациях нередко можно увидеть, и это, в общем, выигрышный вариант.
Люди любят круги/пузыри/шары больше чем фигуры с углами (просто наблюдение). Сложилось несколько гипотез по этому поводу. Наверное, это объясняется тем, что в природе нет идеальных квадратов, треугольников и прямоугольников, а круги и шары - есть. Круг - это первое, что видит человек в своей жизни. То есть, круги и скругленные формы естественнее для человека.
Интересно, что есть тренд на скругление баров и графиков, хотя это считается плохой практикой, в публичных системах таких топов как Google (посмотрите просто на лого Google Analytics), Xiaomi и др.. Наверное, все эти закругления лучше продаются. Эти ребята без AB тестирования вряд ли выкатывают свой дизайн в массы.
Работаем сейчас с UI/UX дизайнерами по бизнес визуализациям для массового пользователя, и они тоже топят за закругления. Вайбы Эппла, не иначе.
В моей визуализации 1000+ самых высокорейтинговых фильмов (7,5+ рейтинг) по версии IMDb, и ее можно использовать как рекомендательную систему, выбирая фильмы по любимым актерам, режиссерам, жанрам или стране. Была проблема с тем, что у одного фильма может быть несколько жанров и стран производителей, поэтому приводил все к одному жанру и одной стране. Прикольно, что в ковидные годы много рейтинговых индийских фильмов.
Еще интересно, что самый высокорейтинговый фильм "The Showshank Redemption" ("Побег из Шоушенка") даже не намекает на побег в английской версии. Выходит, что спойлер в переводе названия.
1️⃣ Данные Wide и Narrow
В подготовке данных часто используют понятия Wide Data и Narrow Data. Этими двумя понятиями обозначают типы представления табличных данных. Первый тип Wide (широкая таблица) содержит метрики в виде полей (столбцов), а Narrow (узкая таблица) - в виде строк. Понятия эти базовые, их спрашивают на собесах, поэтому знать надо.
Широкая таблица (первая на скриншоте) в каждой строке содержит значение всех метрик за месяц, а узкая таблица (вторая на скриншоте) - значение только одной метрики за месяц в строке. Данные одни и те же, но по-разному представлены. В узком варианте число строк увеличивается в X раз, где X - число метрик, поэтому такие таблицы еще называют длинными. И узкие таблицы содержат избыточные данные (месяцы повторяются в примере).
Широкие таблицы привычнее и используются чаще (сводные таблицы). Преобразование широкой формы в узкую в Tableau производим операцией PIVOT. В базах данных (не во всех есть), например, BigQuery - UNPIVOT; python pandas - melt.
*2️⃣*Фильтр метрик в Tableau
Здесь покажу как сделать фильтр метрик в Tableau не преобразовывая широкую таблицу. Недавно про это задавали вопрос в чате Tableau, и есть мнение, что невозможно сделать такой фильтр только по выбранным метрикам. Я давно пользуюсь на проде, поэтому делюсь.
Узкие таблицы для Tableau более универсальны, если нужны фильтры метрик, и делаете сложные дашборды. Но придется повозиться с единицами измерения метрик.
Если же нужен 1 фильтр метрик для одной визуализации, широкую таблицу можно не изменять - не хочется для большого количества данных кратно увеличивать число строк.
Основная проблема с фильтром метрик в Tableau - в фильтр Measure Names берутся все метрики из панели Data - Measures. 12 лет идее настройки быстрого фильтра метрик. Но это не в тренде, и в приоритете у компании эйай, табло пульс, Эйшштейн и другие невероятно полезные фичи. Пользователи же пока размножают данные юнионами.
Чтобы не ждать еще 12 лет и сейчас убрать ненужные метрики из фильтра можно:
1. Перетащить ненужные метрики в раздел Dimensions. Не со всеми вычислениями работает, напр. WINDOW_STDEV, COUNTD, MEDIAN и некоторыми другими.
2. Использовать расчеты ненужных в фильтре метрик прямо на полках (shelves), а не делать вычисляемые поля.
3. Скрыть в панели Data неиспользуемые поля. Если поля или вычисления используются на визуализациях, они не скроются.
4. Если три метода выше не работают, применяем микрохирургию и редактируем файл воркбука .twb. Воркбук - это .xml файл, поэтому редактируем в любом текстовом редакторе.
Файл .twbx - это zip архив с файлом .twb и экстрактом.
- Ищем вычисление по названию, вставляем 'hidden = true' (кусок кода на скриншоте)
- Сохраняем и открываем в Tableau. Это поле будет скрыто
Так показываем в фильтре только нужные метрики.
История одного аналитика и
Реддит эффект
Наверное, большинство в курсе, что такое Reddit. Главную страницу реддита раньше называли 'Главной страницей интернета'. Реддит - это, конечно же, контент и комментарии.
Сегодня будет реальная история одного аналитика, на которого внезапно обрушилась популярность.
Это парень, зовут его Bo McCready. Живет в Остине, Техас. Мы знакомы по дата комьюнити #datafam, где учились и делали визы.
Это было 5 лет назад. Ему было 30, и он работал консультантом в какой-то компании. Как-то раз, Бо взял датасет по фильмам и жанрам и построил простую и понятную визуализацию (первая на скриншоте). Там все просто - графики количества фильмов по жанрам и годам за 100 лет, никакой ракетной науки. Дата комьюнити тогда сидело в Твиттере, поэтому он сделал твит с визом и заодно закинул его в Реддит, в r/dataisbeautiful. А это самый большой сабреддит по датавизу, сейчас там 21М юзеров. Ну закинул и закинул.
В Реддите самое классное - это комментарии, именно ради них надо публиковать свои работы - получите поистине офигенный фидбек и позитивный и негативный. Пользователи голосуют за посты, чем больше апвотов (Upvotes), тем выше в топе пост.
На следующее утро Бо проснулся и офигел - его работа была на главной Реддита, которую часто называют "главная страница интернета". Оригинальный пост
Оригинальный виз на Tableau Public
И понеслось. Работу впоследствии перевели на несколько языков, публиковали в изданиях, у Бо брали интервью. Он еще много визов сделал, и некоторые из них стали успешнее.
Его интервью Forbes
Самое сладкое - Эппл предложил ему работу. Он там до сих пор работает в Data Science.
Вот такая история со счастливым концом.
(Свой же собес в Эппл я благополучно провалил)
Это Reddit-effect, и что такое оказаться на главной странице интернета.
Еще посты Бо:
От том, как его работу опубликовали в New York Post (75k Upvotes)
Hey Jude Lyrical Composition (58k Upvotes). Зацените пайчарт
Рейтинги сериалов (92k Upvotes)
Спортивная аналитика и портреты игроков NBA
В спортивной аналитике много специфических метрик, а для конкретных видов спорта - свои обозначения. espn.com - топ спортивных сайтов по посещаемости. Там много статей, но информация обычно дается в виде таблиц, где метрики - аббревиатуры, в которых ничего не понятно без расшифровки. В баскетболе NBA, например, 3PM (3-Point Field Goal Made) - забитые трехочковые.
Еще считают различные индексы, например, NFL FPI - Football Power Index в американском футболе для каждой команды. Для NFL FPI рассчитывают 3 направления (Атака, Защита, Стратегия). ESPN использует для этого свою предиктивную систему. На выходе имеем коэффициенты атаки (OFF), защиты (DEF), стратегии (ST) и сам индекс мощности команды (FPI).
Такие таблицы в разных спортах мозг категорически отказывается воспринимать.
Cтало интересно взять метрики NBA за почти 30 лет (на Kaggle такой датасет есть) по каждому игроку и сделать виз с портретами игроков в разрезе трех направлений (атака, защита, стратегия). Была гипотеза, что паттерны игроков с разными стилями игры будут сильно различаться.
В итоге от процесса кайфанул, поработал с метриками NBA и результат получился классный.
Для направлений атаки взял очки(PTS), защиты - перехваты (STL), подборы в защите (DREB) и блокшоты (BLK), стратегии - передачи (AST) и подборы в атаке (OREB). В данных оставил регулярные матчи (их в сезоне 82 у каждой команды) и плейофф. Убрал игроков с менее 40 игр в сезоне.
Для каждого игрока строится Ternary Plot (из прошлого поста), где направления Атака, Защита и Стратегия нормируются. Каждая точка - матч игрока, а в тултипах много информации об игроке и его метриках в матче. Получаются "портреты" игроков, и классно сравнивать диаграммы игроков которых знаешь. Все игроки сортируются по метрикам, получаются топы. Например, можно посмотреть топ по проценту попаданий штрафных.
Их прикольного - в Tableau получилось для плотности точек (Density) сделать нативно контуры. Часто получается структура агата, поэтому, назвал виз 'NBA Gems'.
Contour Plot и плотность событий в Seaborn
Contour Plot - подходящий тип диаграммы, когда надо анализировать результаты множества событий на плоскости или карте. Используется при большом числе событий, когда при отображении точек не получается адекватно оценить плотность. Встречается в научных статьях, есть в пакетах Matlab, Origin Pro. В питоне для построения можно использовать библиотеку Seaborn.
Под капотом Seaborn при построении Contour Plot ищется функция 3d поверхности, где ось Z отвечает за плотность распределения событий на участке площади X x Y. Используется способ оценки плотности случайной величины KDE (Kernel Density Estimation) или Ядерная оценка плотности.
На выходе получаем 2d диаграмму, где отображаются контуры срезов 3d поверхности. Естественно, есть параметры построения, например, число контуров.
Полную логику построения и питон код я описывал в своем блоге.
На заглавном скриншоте - плотность преступлений в Лондоне по категориям. Категории разделены по логике Small Multiple (прошлый пост), где для каждой категории строим свой виз.
Полная интерактивная версия на Tableau Public.
Можно переключать на другие типы визуализаций, например, сравнить с dot plot, когда каждое событие отображается точкой на карте. Подложка карт - кастомная от mapbox.com.
Интересно сравнить кражи велосипедов и кражи автомобилей. Еще в категории Other crime есть ярко выраженный максимум, и он на окраине Лондона. Попробуйте догадаться что там.
Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 2 months, 2 weeks ago
Новые и перспективные Web3 игры с добычей токенов.
Чат: https://t.me/Crypto_Wolf_Chat
Правила чата смотрите в описании чата.
Все свои вопросы направляйте в чат или главному модератору чата: @Exudna_118
По теме сотрудничества: @Zombini
Last updated 2 months ago