Визуализация в Superset
Теория: GeoMap и точечная диаграмма
Продолжаем изучать продвинутую аналитику с использованием Apache Superset. В этом уроке мы познакомимся с двумя новыми типами визаулизациями: это точечные графики (Scatterplot) и это карты мира (World Map).
Scatterplot
Начнем с точечных графиков. Для работы нам понадобится наша база PostgreSQL с таблицами продаж. А для карт будем использовать тестовый документ, который уже встроен в демо-воркспейсы Superset – так будет проще.
Давайте сначала разберемся с точечными графиками. Их особенность в том, что по одному измерению у нас может быть несколько значений. Например, если мы смотрим продажи по датам, то на одну дату может приходиться несколько точек – разные категории товаров или типы транспорта. Это очень удобно для поиска тенденций, зависимостей, сезонности.
Создадим такой график. Заходим в SQL Lab и пишем запрос:
Что мы здесь делаем? Соединяем таблицы продаж, клиентов и продуктов. Нам нужны сумма продажи, возраст покупателя и название продукта.
После выполнения запроса нажимаем Create Chart. Важный момент – сначала сохраняем наш запрос как датасет. Теперь выбираем тип графика Scatterplot.
Настраиваем график:
- По горизонтали (x-axis) ставим возраст
- В метрику (metrics) добавляем purchase_amount с агрегацией SUM
- Нажимаем Update Chart
Что интересного видим на графике? Во-первых, больше всего покупок совершили покупатели возраста 21 год. Во-вторых, в остальном, за редкими выбросами, объемы продаж среди всех возрастов одинаковы.
Давайте сделаем график интереснее – добавим разбивку по продуктам. Просто перетаскиваем product_name в dimension. Теперь для каждой даты у нас несколько точек разного цвета – каждая для своего продукта. Правда, если продуктов много, график может стать немного запутанным. В таком случае можно использовать не названия продуктов, а категории – будет нагляднее.
World Map
Теперь давайте посмотрим на карты мира. Это очень эффектный способ визуализации, когда нужно показать данные в разрезе стран. У карт всего три основных параметра:
- Country column – поле с названиями стран (важно: на английском и в формате, который понимает Superset)
- Metric – значение, которое мы хотим показать для каждой страны
- Show bubbles – можно добавить кружки разного размера, показывающие величину значения
Давайте посмотрим на примере данных о вакцинации COVID-19. В демо-данных есть таблица COVID_vaccines. Выбираем из нее страну (country_name) и количество клинических проб вакцины - COUNT(*).
Что интересного показывает карта? В США было проведено 63 пробы – самый большой кружок, в Китае 20, в Канаде 14, в Индии, Турции и России по 12.
Такие карты особенно полезны, когда работаешь с международной компанией и нужно показать:
- Распределение филиальной сети
- Выручку по странам
- Долю прибыли по регионам
Иногда пользователям проще работать с конкретными цифрами, но для презентаций карты – отличный инструмент. Они наглядно показывают географическое распределение данных и очень эффектно выглядят.
Выводы
Сегодня мы научились работать с двумя новыми типами визуализаций в Apache Superset: точечными графиками и картами мира. Точечные графики помогают найти зависимости и тенденции в данных, а карты мира – показать географическое распределение. Теперь вы можете использовать эти инструменты для анализа данных и принятия обоснованных решений.




