Все материалы
Бизнесгайдстарт

Какую диаграмму выбрать: тип графика под вопрос к данным

Шпаргалка по графикам для сравнения, динамики, долей, распределения и связи. На проверенных данных показываем, когда диаграмма помогает и когда искажает вывод.

КейсПрактика27 сентября 2026 г.14 мин

Аналитик хочет показать руководителю изменение суммы бронирований. Линия отвечает, когда оно произошло; столбцы — какой тип брони внёс вклад; таблица — сколько рублей точно. Если выбрать график по красоте, руководство может увидеть долю там, где нужна динамика. Ниже — правило выбора и миниатюры на одной учебной базе «Авиаперевозки».

Коротко: вопрос → график

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

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

Шпаргалка выбора без каталога ради каталога

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

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

Вопрос → решение → ограничение
ВопросГрафикКогда не подходитЧем заменить
Кто больше?Столбцы на общей осиСлишком много категорийТаблица с сортировкой
Когда изменилось?ЛинияВремя состоит из редких событийТочки/столбцы
Какая доля целого?100%-столбецЧасти не дают целоеОбычные столбцы
Как распределены значения?ГистограммаКорзины разной ширины без нормировкиТаблица квантилей
Связаны ли два числа?ТочкиНет парных наблюденийДва отдельных графика
Что отклонилось от плана?План/факт или bulletПлан не утверждёнТаблица фактов
Где потери по шагам?ВоронкаШаги из разных когортКогортная таблица
Как живут когорты?Тепловая таблицаНет окна наблюденияКогортная таблица чисел
Где различия по месту?КартаГеография ничего не объясняетРанжированные столбцы

Одна база и подготовка: не путайте бронь, билет и рейс

Миниатюры взяты из Parquet-версии учебной базы «Авиаперевозки». Период — полная неделя 3–9 августа 2026 года по московскому времени. Одна строка bookings — одна бронь с полной суммой total_amount; одна строка tickets — билет. Чтобы сравнить брони с одним и несколькими билетами, сначала агрегируем tickets до book_ref. В этой неделе 42 561 бронь на 3 377 874 800 ₽. Это не оплаченная или чистая выручка.

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

Данные, из которых построены миниатюры
ПолеЗерноПримерДля чего
book_dateБронь03.08.2026Агрегация по дню
book_refБроньУникальный кодКонтроль числа
total_amountБронь₽Сумма и распределение
ticket_countБронь после GROUP BY1 / 2+Состав и точки

Сравнение категорий: столбцы от нуля

Сумма бронирований с одним билетом — 1 586,13 млн ₽, с двумя и более — 1 791,75 млн ₽. Два столбца легко сравнить по общей базовой линии. Располагайте подписи прямо под категориями и не заставляйте человека искать их в легенде. Если категорий десять, сортировка по значению обычно помогает; если порядок естественный, например недели, сохраните его.

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

Сумма броней по числу билетов, млн ₽

Ось столбцов начинается с нуля. Сумма каждого `book_ref` учтена один раз.

Млн ₽

Динамика: линия для порядка, не для причинности

За дни 3–9 августа сумма выросла с 452,16 до 509,63 млн ₽. Линия подчёркивает порядок и изменение между днями. В отличие от столбцов, её вертикальную ось можно начать не с нуля, если задача — разглядеть небольшой временной сдвиг и границы показаны явно. Для читателя важно видеть шкалу и единицу; начинать её с 450 без подписи будет тем же манипулятивным приёмом, что и у столбцов.

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

Сумма бронирований по дням, млн ₽

Август 2026, МСК; округление на графике до 0,01 млн ₽.

Млн ₽
sqlОдна точка линии — одна календарная дата
SELECT CAST(book_date AS DATE) AS day,
       SUM(total_amount) AS amount_rub
FROM bookings
WHERE book_date >= TIMESTAMP '2026-08-03'
  AND book_date < TIMESTAMP '2026-08-10'
GROUP BY 1 ORDER BY 1;

Доля целого: две части прежде круговой

Однобилетные брони дают около 47,0% суммы, многобилетные — около 53,0%. Поскольку частей две и они исчерпывают недельный итог, круговая здесь допустима. Но если точное различие 6 процентных пунктов важно для решения, подписанный 100%-столбец или таблица читается лучше. Сектор нельзя считать долей, если части пересекаются: один и тот же клиент может находиться в разных каналах или продуктах.

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

Круговая диаграмма двух долей суммы бронирований: один билет около 47%, два и более около 53%
Две непересекающиеся категории складываются в целое. Точные суммы: 1 586 128 300 и 1 791 746 500 ₽.

Распределение: корзины и проблема разной ширины

В неделе 1 226 броней дешевле 10 000 ₽, 9 626 — от 10 до 30 тысяч, 12 607 — от 30 до 60 тысяч и 19 102 — от 60 тысяч. Это удобная таблица порогов, но не честная гистограмма плотности: корзины имеют разную ширину, а последняя вообще открыта. Столбец «60 тысяч и больше» высок отчасти потому, что охватывает огромный диапазон. Сравнивать высоты как плотность нельзя.

Для настоящей гистограммы задайте равные интервалы или делите частоту на ширину корзины. Миниатюра ниже использует пять равных диапазонов по 50 000 ₽ до 250 000 ₽; 1 962 брони выше порога вынесены отдельным хвостом, а не притворяются такой же корзиной. Таблица порогов показывает, как легко получить обманчивое сравнение при разной ширине. Для типичной брони добавьте медиану 56 000 ₽ рядом со средней 79 365,49 ₽; максимум равен 1 062 800 ₽, минимум — 3 400 ₽.

Гистограмма суммы бронирований в пяти равных диапазонах по 50 тысяч рублей с отдельно подписанным хвостом выше 250 тысяч
Пять равных корзин по 50 000 ₽ позволяют сравнить частоты. Открытый хвост 250 000+ показан отдельно: 1 962 брони.
Частоты по диапазонам суммы
Диапазон, ₽Число бронейШирина
<10 0001 226до 10 тыс.
10 000–29 9999 62620 тыс.
30 000–59 99912 60730 тыс.
60 000+19 102открытый интервал

Связь величин: точки вместо причинной истории

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

Это не оценка причинного эффекта добавления билета. Маршрут, класс тарифа и число сегментов тоже влияют на полную стоимость. Без парных строк обеих величин точечная диаграмма невозможна: два независимых ряда по дням не становятся «связью» от того, что у них одинаковое количество точек. Подпишите размер выборки и способ отбора. Скрипт миниатюры берёт 100 строк по устойчивому порядку, а не случайную рекламную подборку.

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

Накопленные столбцы: состав каждого дня

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

Миниатюра ниже создана из агрегата daily_bucket; сумма двух частей для 3 августа равна 5 665. Это проверка, а не украшение. Не складывайте типы, которые могут пересекаться; здесь каждая бронь попадает ровно в одну группу после подсчёта билетов.

Накопленные столбцы числа бронирований с одним и несколькими билетами по дням недели
Сумма сегментов равна общему числу броней каждого дня; 3 августа — 5 665.

План-факт: отклонение должно иметь базу

Если утверждён план на неделю, можно поставить фактическое значение на шкалу рядом с плановым маркером — bullet chart — и подписать разницу в единицах и процентах. В учебной базе плана нет. Поэтому мы не рисуем план-факт на настоящих числах: пример графика был бы выдуманным. Для работы сначала получите версию плана, период, владельца и правило пересмотра; затем выберите шкалу. Если целей много, таблица отклонений с сортировкой часто удобнее десятка индикаторов.

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

Чтобы показать саму форму bullet-графика без выдуманного плана, миниатюра берёт текущую сумму 3,38 млрд ₽ и исторический ориентир 3,12 млрд ₽ из предыдущей полной недели. Полоса — текущий факт, вертикальная черта — предыдущая неделя. Подпись прямо говорит, что это не утверждённый план. Если договорённый план появится, замените ориентир именно им и зафиксируйте версию, а не переименовывайте вчерашний факт в цель.

Горизонтальная шкала сравнивает сумму бронирований текущей и предыдущей недель с пометкой, что прежняя неделя не план
Графика сравнения на реальных данных: текущая неделя 3,38 млрд ₽, исторический ориентир 3,12 млрд ₽. Это не план-факт.

Воронка: последовательность и один знаменатель

В учебном Northstar 18 регистраций, 10 пользователей создали рабочее пространство. Воронка показывает прохождение этих двух шагов и наблюдаемую долю 55,6%. Для анализа продукта уточните окно после регистрации и убедитесь, что шаги относятся к одной когорте. Если первый шаг — все пользователи июня, а второй — все события июля, падение не будет конверсией этих людей.

Воронка полезна, когда шаги обязательны и порядок фиксирован. Для необязательных параллельных действий лучше таблица вариантов или сеть переходов. При маленькой выборке рядом с процентом обязательно покажите абсолютные 18 и 10: потеря одного человека меняет долю на 5,6 п.п. Визуал не должен создавать иллюзию статистической точности.

Northstar: от регистрации до первого рабочего пространства

Учебный набор, 18 регистраций и 10 пользователей с событием; окно активации отдельно не задано.

Регистрация100% от входа
Создали workspace56% от входа

Когорты: сравнивайте один возраст, а не одну дату

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

На наших бронированиях нет жизненного цикла пользователя, поэтому не называйте тепловую таблицу двух типов броней когортным retention. Здесь миниатюра тепла показывает другой допустимый вопрос: как менялся дневной состав 1-билетных и многобилетных броней. Сами значения — проверенные числа броней; размер рядов указан отдельно. Чтобы построить retention, потребуется отдельная таблица пользователей и событий, как в Northstar, и определённое окно.

Число броней по дню и типу — тепловая миниатюра, не retention

Столбцы — взаимоисключающие типы броней; размер строки — все брони дня. Цвет нельзя трактовать как долю когорты.

3 авг
5 665
1 билет
3731%
2+ билета
1934%
4 авг
5 813
1 билет
3812%
2+ билета
2001%
5 авг
5 937
1 билет
3956%
2+ билета
1981%
6 авг
6 081
1 билет
4003%
2+ билета
2078%
7 авг
6 184
1 билет
4019%
2+ билета
2165%
8 авг
6 350
1 билет
4215%
2+ билета
2135%
9 авг
6 531
1 билет
4275%
2+ билета
2256%

География: карта только когда место имеет смысл

Карта помогает, если решение пространственное: куда поставить смену поддержки, где нарушается доступность рейсов, какие маршруты требуют внимания. Если задача — просто сравнить десять аэропортов по числу бронирований, упорядоченные столбцы обычно дают точнее прочитать различия. Площадь региона на карте не равна объёму бизнеса, а заливка цветом может визуально доминировать из-за геометрии.

Не соединяйте билет с несколькими сегментами маршрута и не приписывайте полную сумму брони каждому аэропорту: получится умножение денег. Прежде карты определите единицу: вылеты, прилёты, билеты или брони с распределением суммы. В нашем наборе это требовало бы отдельной модели; поэтому вместо красивой, но необоснованной карты оставляем правило выбора.

Оси, цвет и подписи: последние проверки

Столбцы начинаются от нуля, потому что читатель сравнивает длины. Линия может иметь узкую ось, если шкала ясно показана и не маскирует величину изменения. Две оси Y для денег и числа броней опасны: выбор диапазонов способен сделать линии похожими или противоположными без изменения данных. Лучше поставить два небольших графика с одинаковым временем и подписать корреляцию только после отдельной проверки.

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

Ошибки и частые вопросы

Первая ошибка — круговая по 20 категориям: важная доля теряется среди узких секторов. Вторая — обрезанная ось столбцов: небольшое отличие выглядит катастрофой. Третья — сумма DAU по дням как число уникальных за неделю: люди повторяются. Четвёртая — воронка из разных периодов: падение отражает изменение состава, не конверсию. Пятая — распределение с открытым последним интервалом без предупреждения: большая корзина кажется плотным пиком. Шестая — две оси Y с подобранными масштабами: формы линий выдают за связь.

Когда нужна таблица вместо графика? Когда читатель сверяет точные суммы или много близких строк. Можно ли использовать круговую? Да, для двух-трёх непересекающихся частей одного целого с подписями. Почему линия не всегда от нуля? Её задача часто — изменение между соседними точками, но масштаб должен быть открыт. Что делать с большим количеством категорий? Сортировать, группировать малые в «прочее» с явным составом или дать фильтруемую таблицу.

Выберите один вопрос к данным и сделайте контрольную таблицу до графика. Если подготовка агрегации пока сложна, SQL-тренажёр с нуля поможет собрать честную строку на день, категорию или когорту.

Продолжить чтение
Вся библиотека