Визуализация исторической стоимости авиабилетов в зависимости от даты покупки
Есть интересная задача — визуализировать историческую стоимость билета (авиа, жд и т. п.) в зависимости от даты его покупки. Предложенный график цены билета на определённую дату вылета в зависимости от даты покупки — это первый шаг в решении задачи. Именно такой тренд интересно изучать и сравнивать для разных дат и сезонов вылета, перевозчиков, направлений. Это идеальный элементарный кирпичик визуализации: графики удобно сравнивать между собой (сравнимость) и складывать друг с другом для получения глобальных картин (аддитивность). Глобальные картины, полученные суммированием графиков, в свою очередь тоже можно сравнивать.
Методология и данные для анализа
Наиболее простым кажется следующий вариант: пользователь выбирает направление (откуда и куда), авиакомпанию-перевозчика, выбирает дату отправления и на графике ему показывается стоимость в зависимости от даты покупки. Чтобы проиллюстрировать свою мысль я воспользуюсь данными, любезно предоставленными туристическим сервисом «Туту.ру». В качестве основы для изучения используются следующие показатели:
- Москва → Симферополь (Аэрофлот): 5384 цены на билеты;
- Москва → Берлин (усреднённые по компаниям): 1480 цен;
- Москва → Тиват (усреднённые по компаниям): 1035 цен.
Данные не совсем полные и однородные, тем не менее интересные для изучения. Чтобы отличать графики между собой используем цветной градиент для разных дат вылета. В целом подтверждается гипотеза, что чем ближе вылет, тем дороже билеты: в правой части графика дорогих покупок больше, сеть плотнее. Но и исключений из этого правила — нисходящих графиков с заблаговременными дорогими покупками — довольно много.
Сезонные закономерности на маршруте Москва → Симферополь
Изучим внимательно наиболее подробные и однородные данные о перелёте Москва → Симферополь (только Аэрофлот):
- Лето: Билеты в прошлом летнем сезоне покупались и заранее, и накануне вылета, в среднем за 5 тыс. руб со случайными отклонениями до 7—10 тыс.
- Осень: Осенью плотность «хвоста» слева уменьшилась, покупки совершались ближе к дате вылета, при этом ранняя цена в среднем чуть меньше поздней.
- Зима: Зимой билеты никто не покупал раньше, чем за полтора месяца до вылета, зато цены покупок в последние дни заметно скачут — до 10—15 тыс.
- Весна: Весной проявились ярко выраженные ступеньки (фиксированные тарифы): синие мартовские ступеньки до снижения цен по указанию президента, зелёные апрельские — после.
Внешние факторы и технические улучшения
Цены приведены в рублях. Но для международных рейсов, номинированных в евро, стоимость может меняться раз в неделю за счёт валютного курса. Если до прошлого года такими колебаниями можно было бы и пренебречь, то затем изменения стали куда более заметными даже на трёхмесячном интервале. Также стоит учитывать список авиакомпаний, среди которых могут быть МАУ, MIAT, S7 и кодшер-партнёры.
Для удобства пользователей были внесены изменения в визуализацию: мы показали цены при наведении на кривую, подписали горизонтальную ось, подсветили дату вылета на слайдере. Заодно реализовали обратную логику — при наведении на слайдер подсвечиваются соответствующие кривые, что позволяет наглядно увидеть, за сколько дней цена начинает расти или падать.