Original size 2480x3500

Визуализация данных поведения в онлайн-играх

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

ОПИСАНИЕ

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

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

Набор данных Online Gaming Behavior Insights Dataset предоставляет обзор моделей поведения игроков в различных демографических группах, жанрах игр и уровнях вовлеченности. Этот набор данных предназначен для поддержки исследовательского анализа данных, поведенческой аналитики и прогнозного моделирования, связанных с привычками в онлайн-играх. Он отражает то, как игроки взаимодействуют с играми с точки зрения времени игры, частоты сессий, предпочтений сложности, прогресса и интенсивности вовлеченности. Этот набор данных, содержащий более 40 000 записей об игроках.

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

СТИЛЬ

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

big
Original size 2344x762

ЭТАПЫ РАБОТЫ

Я подключила библиотеку pandas, которая используется для анализа и обработки данных. Загрузила CSV-файл с данными Online gaming behavior insight

import pandas as pd

df = pd.read_csv («/content/online_gaming_behavior_insights.csv») df.head ()

Загрузила шрифт Montserrat

import os import urllib.request import matplotlib.pyplot as plt import matplotlib as mpl import matplotlib.font_manager as fm

FONT_URL = «https://github.com/google/fonts/raw/main/ofl/montserrat/Montserrat%5Bwght%5D.ttf" FONT_PATH = «/content/Montserrat.ttf»

if not os.path.exists (FONT_PATH): urllib.request.urlretrieve (FONT_URL, FONT_PATH)

fm.fontManager.addfont (FONT_PATH)

mpl.rcParams[«font.family»] = «Montserrat» mpl.rcParams[«font.sans-serif»] = [«Montserrat»]

Задала стиль для всех графиков

import matplotlib.pyplot as plt import matplotlib as mpl

BACKGROUND = «#2E2E2E» PALETTE = [»#1F4E79», «#006400», «#FFD700», «#FF0000», «#FF69B4»]

mpl.rcParams.update ({

«figure.facecolor»: BACKGROUND,
«axes.facecolor»: BACKGROUND,
«savefig.facecolor»: BACKGROUND,

«axes.edgecolor»: «white»,
«axes.linewidth»: 1.3,

«text.color»: «white»,
«axes.labelcolor»: «white»,
«xtick.color»: «white»,
«ytick.color»: «white»,

«axes.titlesize»: 16,
«axes.labelsize»: 13,
«xtick.labelsize»: 11,
«ytick.labelsize»: 11,

«lines.linewidth»: 2.2,
«patch.edgecolor»: «white»,

«axes.grid»: False,

«font.family»: «Montserrat»,
«font.sans-serif»: [«Montserrat»]

})

Провела проверку

plt.figure (figsize=(6,3)) plt.text (0.5, 0.5, «Проверка нового стиля», ha="center», va="center», fontsize=18) plt.axis («off») plt.show ()

АНАЛИЗ И ВИЗУАЛИЗАЦИЯ ДАННЫХ

Original size 1280x801

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

Original size 1812x386
Original size 962x1020

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

Original size 1846x272
Original size 1280x866

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

По графику видно, что среди 18-летних игроков присутствуют как очень активные, так и пассивные представители. Игроки равномерно распределены по количеству времени.

Original size 1772x778
Original size 1280x871

Для сравнения был выведен график с данными о игроках 30-летнего возраста. На диаграмме по горизонтали показано общее время игры в часах, а по вертикали — возраст. Поскольк все игроки имеют возраст 30, я добавила промежуток равно 0,2 чтобы точки не накладывались друг на друга. Каждая точка на графике представляет собой одного игрока. Прозрачность и размер точек помогают видеть плотность игроков, которые проводят одинаковое количество часов в игре.

По графику видно, что среди30-летних игроков, также как и среди 18-летних, присутствуют как очень активные, так и пассивные представители. Игроки равномерно распределены по количеству времени, график похож на график среди молодых игроков, что говорит о том, что нет слишком больших отличий между молодыми и старшими игроками по критерию возраста.

Original size 1878x784
Original size 1572x998

При помощи графика можно оценить среднее количество минут среди общей массы игроков.

Original size 2186x504

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

Описание применения генеративной модели:

Для расшифровок ошибок в коде была использована модель ChatGPT

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