При создании новых приложений Qlik часто я стараюсь найти необычные подходы к визуализации данных. Сейчас я в поисках интересных решений для аналитики на картах. С недавней покупкой Idevio, Qlik значительно усиливает свои позиции на рынке гео-аналитики, а лично я собираю копилку интересных примеров аналитики на картах в российской практике. Именно эти поиски и привели меня к не совсем традиционному формату карты, а именно Grid Map или карте с координатной сеткой. Обычная такая карта используется в авиации и военном деле, а мне стала интересна ее применимость в бизнесе и сценарного анализа «что-если».

Карта с координатной сеткой: что это такое

Такой тип отображения картографической информации стали часто использовать в урбанистке. И, конечно, такую визуализацию любят такие издания как Bloomberg и New York Times.

Один из крупных проектов с Grid Map был запущен в Лондоне, когда отображение данных было реализовано не в типичных круглых объектах как, это принято, в фоновой картограмме, а квадратах, что позволило добавить больше смысла и контекста данным.

http://aftertheflood.co/images/made/downloads/images/square-unit_1200_588_ffffff.jpg

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

https://upload.wikimedia.org/wikipedia/commons/thumb/b/bb/UkraineDensity10.PNG/300px-UkraineDensity10.PNG

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

Example of a rich tile grid map

Суммируя, grid map или карта с координатной сеткой – это своеобразный микс между фоновой картограммой и тепловой картой, которая позволяет представить картографические данные в матрице.

НА ЗАМЕТКУ! В создании визуализаций мы всегда стремимся соблюсти правило размера, то есть сделать так, чтобы размер объекта визуализации по масштабам соотносился с реальными численными показателями. В Grid Map, как правило, это правило игнорируется: размер квадратов считается равным, не смотря на реальные значения показателей. Для сохранения работоспособности правила соответствия размеров используется цвет как дополнительное измерение данных, а также текстовые знаки и символы.

Карта с координатной сеткой: расширяем применение к бизнес-задачам

Идем дальше. Ход размышлений приводит нас к вопросу – это здорово, но как применить это к бизнес-задачам.

Qlik Sense Extension "2 Dimensional Heatmap": grid

 

 

 

 

 

 

Бизнес-применение такой карте я нашел при оценке работы региональных менеджеров по достижению ими KPI для одной дистрибьюторской компании. Есть лишь одно но – количество значений, которое нанесено на карту должно быть таким, чтобы их легко было понятью. Такой подход будет удобен, если мы оцениваем от 50 до 100 сотрудников. А теперь перейдем к практическому примеру создания карты с координатной сеткой в Qlik.

Карта с координатной сеткой: инструкция по созданию в Qlik

В данном примере рассмотрим создание карты на примере карты США. Сначала перенесем все штаты США на обычный лист Excel. У нас получится матрица такого вида:

25_01

Затем создадим новый документ QlikView и загрузим в него таблицу Excel.

25_02

Затем загрузим всю остальную часть данных:

25_03

Создадим сводную таблицу, используя строки и колонки как измерение, а State_ID как выражение.

Далее перейдем во вкладку Представление и выберем «Всегда оставлять развернутым».

25_04

Перетащите колонку, для того чтобы создать таблицу.

25_05

В той же вкладке представление настройте параметры отображения ячеек таблицы:

25_06

И, конечно, нам нужно заменить нулевые значения на символы (знаки пробела).

25_07

Далее выполним другие настройки отображения карты:

  • Заголовок: Отключить показ заголовка.
  • Макет: Отключить границы.
  • Стиль: Сделать границы ячеек прозрачными на 100%.

25_08

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

25_09

Делаем все то же самое для первой строки. У нас получится вот такая таблица:

25_10

А теперь перейдем к работе с цветом. Создайте скрипт и две переменные в RGB-кодировке (поскольку пример для политических партий США, то для демократов и республиканцев):

25_11

Воспользуемся функцией ColorMix2(). Функция работает с градиентом на основе 4 параметров: значение от -1 до +1, цвет -1, цвет +1, а также 0. У нас будут использоваться такие три параметра:

25_12

Первый же параметр нужно перевести не в процентные значения, а в значения от -1 до 1. Для этого воспользуемся нормализацией от минимального до максимального значения:

25_13

Итак, давайте представим, что у нас есть 75% демократов:

25_14

У нас есть два формата измерения: % демократов (0% > 100%) и ColorMix2 (-1 > 1). Поскольку у нас получается значение ровно посередине от 50% до 100% по первому уровню измерения, то второй уровень измерений должен быть ровно в диапазоне от 0 и +1. Воспользуемся формулой:

25_15

(.75 – .5) / (1 – .5) = +0.5, что будет соответствовать корректному решению нашей задачи.

В итоге, получим вот такую формулу:

25_16

Теперь формула ColorMix2 готова, используем ее в качестве настроек фона для нашего выражения:

25_17

25_18

У нас получится такая карта:

25_19

Однако есть маленькая проблема – при выборе элемента карты, будет происходить выборка и исчезнет вся карта!

25_20

Поэтому скажем, что нужно игнорировать выборки в определенных полях (приходим к анализу множеств). Так, выражение примет вид:

25_21.png

Карта останется активной, даже, если мы выберем какой-то штат:

25_22

И еще кое-что. Добавим к неактивным штатам серый цвет:

25_23

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

25_24

И также сделаем настройку цвета текста:

25_25.png

25_26

Добавим несколько фильтров:

25_27

Вот и все! У нас получилась карта с координатной сеткой в Qlik.

Скачать файл qvw и источник данных

В описании практической части создания Grid Map в Qlik были использованы материалы QlikFreak.