Задачи на визуализацию на собеседовании аналитика

Что спрашивают

Блок визуализации на собесе проверяет:

  • Правильный выбор графика под задачу.
  • Знание принципов data viz (обман, ложный эффект, truncated axis).
  • Владение matplotlib/seaborn/Tableau.
  • Умение презентовать данные нетехнической аудитории.

Задача 1. Выбор графика под задачу

Какой график для: сравнения DAU между 3 регионами за 12 месяцев?

Ответ. Линейный график с 3 линиями (по региону), дни/месяцы на оси X. Bar chart тут хуже — не видна динамика.

Общие правила:

  • Динамика во времени → линейный график.
  • Сравнение категорий → bar chart.
  • Распределение одной переменной → histogram или boxplot.
  • Корреляция двух переменных → scatter plot.
  • Состав целого → pie chart (до 5 элементов) или stacked bar.
  • Матричные данные → heatmap.

Подробнее — типы графиков для аналитика.

Задача 2. Ошибка truncated y-axis

На графике revenue растёт с 100 до 105 за год. Ось Y от 98 до 107 — эффект «ракеты». Почему плохо?

Ответ: truncated axis визуально завышает изменения. Правильно:

  • Начинать ось Y с 0 для bar charts (иначе ложный эффект большой разницы).
  • Для line charts можно от не-нуля, но явно обозначать, что «ось обрезана».

Подробнее.

Задача 3. Визуализация когорт

Как показать retention по 12 когортам × 12 периодов?

Ответ. Heatmap. Строки — когорты, столбцы — периоды, цвет — % retention. Стандарт.

Если хочется сразу закрепить тему на практике — открой тренажёр в Telegram. 10 минут в день — и синтаксис в пальцах.

Задача 4. Когда pie chart уместен

PM просит построить pie chart для распределения выручки по 15 категориям. Что сказать?

Pie chart для 15 сегментов — каша. Альтернативы:

  • Bar chart (по убыванию) — читабельно.
  • Treemap — если нужно именно area-based представление.
  • Top-5 + «Other» в pie — если очень хочется.

Правило: pie до 5 сегментов, иначе bar.

Задача 5. Распределение с выбросами

Как визуализировать средний чек, когда есть выбросы в 100x от медианы?

Ответ. Обрезать по p99, показать histogram. Отдельно упомянуть выбросы в комментарии. Альтернатива — log scale на оси.

Задача 6. A/B-тест visualizations

Визуализировать результаты A/B-теста: метрику по дням для контроля и теста.

Стандарт:

  • Линейный график двух линий (control/test).
  • Confidence intervals (shaded area).
  • Подпись: total lift, p-value.

Seaborn:

import seaborn as sns
sns.lineplot(data=df, x='date', y='conversion', hue='group',
             ci=95, estimator='mean')

Задача 7. Matplotlib basics

import matplotlib.pyplot as plt

fig, ax = plt.subplots(figsize=(10, 5))
ax.plot(df['date'], df['dau'], label='DAU')
ax.set_xlabel('Date')
ax.set_ylabel('DAU')
ax.set_title('Daily Active Users')
ax.legend()
ax.grid(alpha=0.3)
plt.tight_layout()
plt.show()

Базовый паттерн, должен быть в рефлексах.

Задача 8. Seaborn для статистики

import seaborn as sns

# Распределение
sns.histplot(df, x='amount', hue='category')
sns.boxplot(data=df, x='category', y='amount')

# Корреляция
sns.scatterplot(data=df, x='price', y='revenue')
sns.regplot(data=df, x='price', y='revenue')  # + линия тренда

# Heatmap
sns.heatmap(corr_matrix, annot=True, cmap='coolwarm')

Seaborn — высокоуровневый, делает красивее matplotlib из коробки.

Чтобы не только читать теорию, но и решать реальные задачи — загляните в бот Карьерника. Там по каждой теме подборка вопросов с разборами.

Задача 9. Dashboard-принципы

Какой должна быть страница дашборда?

Принципы:

  1. Самая важная метрика — в левом верхнем углу (взгляд идёт отсюда).
  2. Ограничить количество виджетов до 6-8 на странице.
  3. Единая цветовая схема — не смешивать 10 цветов.
  4. Tooltip с контекстом — абсолютные + относительные изменения.
  5. Временной период — явно указан.
  6. Drill-down — с дашборда можно перейти в детали.

Подробнее — дашборд аналитика.

Задача 10. Storytelling с данными

Презентуете результаты эксперимента руководителю. Что и как показываете?

Структура:

  1. Главный вывод одним предложением. («Тест показал +3% к конверсии, p<0.05, рекомендую катить.»)
  2. Контекст — что тестировали, сколько длился, сколько пользователей.
  3. Основной график — метрика по дням, контроль vs тест.
  4. Guardrail-метрики — retention, скорость, crashes.
  5. Сегменты — где эффект сильнее.
  6. Рекомендации — катить/не катить, следующие шаги.

Никогда: начинать с методологии, показывать 20 графиков в надежде что-то прицепится.


Как тренироваться

Визуализация — это смесь техники (matplotlib/seaborn) и дизайн-мышления (что показать, что скрыть). Практикуйте на реальных датасетах Kaggle.

Тренажёр Карьерник содержит блок визуализации: выбор графика, ошибки, принципы dashboard.

Совет: на собесе, если просят нарисовать график для метрики — сначала словами опишите, что на нём будет (оси, легенда, цвет). Это сразу показывает дизайн-мышление.

Читайте также

FAQ

matplotlib или seaborn?

Seaborn для быстрых статистических графиков. matplotlib — когда нужен точный контроль каждой детали. На практике используют оба: seaborn для базы, matplotlib для настройки.

Какой цвет для dashboards лучший?

Нейтральный + 1-2 акцентных. Избегайте rainbow — глазам тяжело. Для red/green — помните про color-blindness, дублируйте иконками.

Tableau или Metabase?

Metabase — проще, дешевле, для маленьких команд. Tableau — мощнее, дороже, для enterprise. Superset — open-source альтернатива. Подробнее — Tableau vs Power BI.

Нужно ли знать D3.js?

Для аналитика — нет. D3 это для data-journalism и кастомных visualizations. Стандартные BI-инструменты покрывают 99% задач аналитика.