
Описание проекта

Dota 2 — соревновательная игра, где выбор героя и его эффективность зависят как от силы персонажа в патче (версии игры), так и от меты (насколько персонаж в данный момент актуальный для выбора игроками), стиля игры и уровня игроков. Количественный анализ помогает увидеть закономерности, которые трудно заметить при субъективной оценке.
В рамках проекта будет выполнен анализ данных по героям Dota 2, чтобы понять, какие герои популярны, какие чаще выигрывают, и как связаны результативность (Win Rate), популярность (Pick Rate) и сложность героя.
Выбор данных
Для анализа используется датасет dota2_heroes_stats_clean.csv, содержащий информацию по 126 героям. В таблице присутствуют: • основные идентификаторы (name, id); • игровые характеристики и атрибуты (primary_attr, базовые статы и их прирост); • сложность героя (complexity); • ключевые метрики популярности и эффективности: pickRate, winRate, banRate; • дополнительные параметры (скорость атаки, поворот, дальность и др.).
Данные представлены в формате CSV, что делает их удобными для обработки с помощью Pandas и построения визуализаций в Matplotlib.

Источник данных
Датасет, используемый в проекте, был создан с помощью данных другого датасета на платформе OpenDota, поэтому весь используемый датасет в этом проекте был структурирован и доработан лично по данным из датасета на этой платформе.
Набор данных интересен тем, что объединяет: • поведенческие метрики игроков (Pick Rate / Ban Rate), • результативность (Win Rate), • характеристики героя (атрибуты и сложность). Это позволяет посмотреть на героев сразу с нескольких сторон: популярность ≠ сила, а «сложный герой» не обязательно означает высокий (или низкий) процент побед.
Цели и задачи исследования
Целью проекта является визуальный и сравнительный анализ героев Dota 2 по показателям популярности, эффективности и сложности, а также выявление общих закономерностей между этими показателями.
Для достижения цели были сформулированы задачи: • определить самых популярных и самых редких героев по Pick Rate; • визуально показать героев с лучшим Win Rate (и как это читается в целом); • сравнить распределения Win Rate по уровням сложности; • найти лидеров и аутсайдеров среди достаточно популярных героев; • проверить, бывают ли редкие герои сильными; • изучить общее распределение Win Rate и насколько оно близко к 50%.
Подготовка и обработка данных
Датасет уже представлен в «чистом» виде. Перед построением графиков??????????????? : • числовые столбцы (pickRate, winRate, banRate) приводятся к числовому типу; • для графика по сложности используется complexity как категориальная группа (½/3); • для сравнений используются агрегаты: средние значения, медианы и квантиль для определения «популярных».
Инструменты анализа: • Pandas — загрузка и обработка данных. • Matplotlib — построение всех визуализаций. • Единый стиль (фон/сетка/палитра) реализован через настройки rcParams, чтобы графики выглядели как одна серия.
Подход к визуализации
Особенность проекта — единый визуальный стиль Radiant/Dire, где «успех/плюс» визуально читается через Radiant-палитру, а «минус/слабее/реже» — через Dire-палитру.
В игре есть две стороны, за которые ты можешь играть — это выше названные Radiant и Dire, которые имеют свое личное обозначение цветом. Все постройки, войска, а так же реальные игроки, играющие на персонажах каждой из сторон, отображаются своим цветом.
Radiant (Силы Света) — в игре обозначаются зеленым цветом. Dire (Силы Тьмы) — обозначаются красным цветом.
Каждый график решает свою аналитическую задачу: • сравнение крайних значений (diverging bar chart), • «визуальная типографика» для быстрого чтения топ-героев (scatter-layout текстом), • сравнение распределений (ridgeline), • сравнение относительно среднего (dumbbell), • анализ редких значений (lollipop), • обзорное распределение (histogram).
Использование генеративной модели
В процессе работы использовалась генеративная модель (ChatGPT) как вспомогательный инструмент: для улучшения формулировок, подбора визуальных решений и доработки кода визуализаций. Нейросеть не заменяла анализ данных, а использовалась как поддержка.
После подготовки данных и формулировки исследовательских задач был выполнен визуальный анализ — серия графиков, которая показывает мету и эффективность героев через разные «углы зрения».
1. Самые популярные и самые редкие герои (Pick Rate)
График показывает две группы героев: тех, кого выбирают чаще всего, и тех, кого выбирают крайне редко. Визуально это сделано через расхождение столбцов: популярные герои уходят вправо (Radiant-цвет), а редкие — влево (Dire-цвет). Такой приём помогает быстро увидеть контраст между «метовыми» героями и героями, которые почти не появляются в играх.
2. Ранжирование по проценту побед (Win Rate)
На графике имена героев располагаются по кругу. Чем ближе герой к центру и чем крупнее его имя, тем выше его Win Rate. Цветовой градиент от Dire к Radiant подчёркивает переход от более слабых значений к более сильным.
Топ по Win Rate визуально выделяется крупными именами ближе к центру — лидеры заметны сразу. Разброс Win Rate у лучших героев не выглядит огромным, что подчёркивает баланс: большинство значений близко к 50%. В целом «самые сильные» по Win Rate — это ограниченная группа, но преимущество над остальными умеренное.
3. Проще ≠ хуже? Win Rate по сложности
График сравнивает распределение Win Rate для героев трёх уровней сложности. Линия медианы помогает понять «типичный» Win Rate в группе, а форма волны показывает разброс. Это позволяет сравнить не отдельного героя, а поведение целого класса (простые/средние/сложные).
На данном графике мы можем увидеть, что преимущество по показателю находится у графика простого класса, но относительно остальных графиков, разброс в процентах побед не такой колоссальный. Как не странно, более легкий класс имеет долю побед выше. Таким образом, простые персонажи не будут хуже более сложных в хорошем исполнении.
4. Лидеры и аутсайдеры среди популярных
Среди достаточно популярных героев выбираются лидеры и аутсайдеры по Win Rate относительно среднего по датасету. Серая точка — средний Win Rate, цветная — значение героя. Линия показывает «насколько далеко» герой ушёл от среднего.
Такой подход подчёркивает главную мысль: даже среди популярных героев есть заметные «плюсы» и «минусы».
5. Редкие герои: всегда ли они слабые?
Берутся герои с самым низким Pick Rate и сравниваются по Win Rate. Леденец-маркер (кружок) показывает значение Win Rate, а размер маркера дополнительно намекает на величину Pick Rate (внутри редких).
График помогает ответить на вопрос: «редкий герой — значит слабый?». Обычно оказывается, что часть редких героев вполне конкурентоспособна, просто они сложнее или менее популярны в мете.
6. Насколько результаты близки?
Гистограмма показывает, как распределены Win Rate по всем героям. Вертикальные линии отмечают среднее и медиану, а полоса IQR показывает диапазон «средних 50%» значений.
Обычно в Dota 2 Win Rate большинства героев сгруппирован рядом с 50%, поэтому визуально важно увидеть: насколько широкий разброс, есть ли сильные перекосы, и много ли «крайних» героев. По нашему графику мы можем увидеть, что основная масса героев близится к нашем заветным 50%, то есть среднему значению.
Заключение
Визуальный анализ показывает, что: • популярность героя и его эффективность не всегда совпадают; • распределение Win Rate обычно компактно вокруг 50%, но есть заметные лидеры и аутсайдеры; • сравнение по сложности помогает увидеть, отличаются ли классы героев как группы; • среди редких героев встречаются сильные варианты, которые могут быть недооценены.
В современной киберспортивной аналитике решающее значение имеет контекст патча и мета-тренды — абсолютные показатели героя менее важны, чем его ценность в конкретных стратегиях и против определённых составов, что делает выявление «скрытых» сильных героев ключевым фактором для команд на профессиональном уровне.