Tableau — это мощный инструмент, который поможет дата-журналисту исследовать данные и построить прототипы визуализаций. У Tableau есть бесплатная версия, которая называется Tableau Public — для наших целей она не имеет практически никаких ограничений, кроме, разве что, одного: результаты работы мы сможем сохранять только онлайн. Скачать Tableau Public можно на официальном сайте.

Видео: Глеб Лиманский

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

Как не должно быть: пустые строки, объединённые ячейки, пометка об обновлении, не относящаяся к данным
Как не должно быть: пустые строки, объединённые ячейки, пометка об обновлении, не относящаяся к данным

В этом уроке мы будем работать с csv-файлом — аварийным жилищным фондом РФ. Его можно скачать на портале открытых данных реформы ЖКХ. На главном экране Tableau есть синяя колонка с надписью Connect — это окно подключения к данным. Нам нужно выбрать Text File, посколько csv-файл — текстовый.

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

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

Для того, чтобы исправить эти ошибки, правой кнопкой мыши нужно нажать на название файла в серой рамке, и дальше выбрать либо Field names are in first row — для того, чтобы считать названия столбцов из первой строчки файла, либо Text File Properties, чтобы поправить кодировку или разделитель. В новом окне за эти настройки отвечают поля Character Set и Field Separator соответственно.

Также стоит внимательно присмотреться к столбцам. Над текстовыми колонками в нашем наборе данных стоит пометка Abc, над числовыми — #. Tableau определила переменную Area Total — общую площадь дома — как текстовую, но на самом деле это число. Это произошло потому, что в Америке для обозначения дробных чисел используют точки, а в России — запятые. Настроить правильное отображения можно также в меню Text File Properties — для этого нужно выбрать локаль (Locale) — Russian.

Когда мы правильно открыли данные, можно начать их исследовать. В нижней части экрана выбираем Sheet1 и переходим на рабочий лист. Слева появятся все наши столбцы-переменные, а по центру — рабочая область, на которой мы будем строить графики.

Идея визуализации данных основана на том, что мы кодируем разные параметры при помощи простых свойств геометрических фигур — положения, размера, цвета, формы. На этом и основана работа в Tableau — любую из наших переменных мы можем перетащить в размер, цвет или другое свойство и таким образом построить нужную визуализацию.

Переменные в Tableau делятся на два типа — Dimensions (измерения) и Measures (меры). Измерения находятся над чертой в колонке переменных, а меры — под чертой.

Измерения помогают разбить наш датасет по какому-то признаку. Перетащим измерение House Type (тип дома) в поле Columns над рабочим листом, и увидим, как у нас появились типы домов. Для каждого из этих типов мы можем посчитать какие-то значения переменных-мер. Перенесём меру Residents Count (количество жильцов) в ряды (поле Rows над рабочим листом), и узнаем, сколько жильцов в доме каждого типа.

Рядом с названием переменной Residents Count в поле Rows появилась пометка SUM(). Это значит, что Tableau посчитала сумму для каждого измерения. Мы можем выбрать любую другую фукнцию агрегации — для этого надо кликнуть правой кнопкой мыши на SUM([Residents Count]), затем выбрать пункт меню, где написано Measure (Sum) и выбрать другую функцию — среднее, медиану, максимум, количество. 

Рассмотрим подробнее разницу между измерениями и мерами. Создадим новый лист — для этого в нижней части экрана нужно нажать на кнопку New Worksheet — первую из трёх кнопок с плюсом.

В нашем наборе данных есть переменная Project Type — это серия дома. Допустим, мы хотим узнать, сколько жителей в доме каждой серии. Переменная Project Type по умолчанию находится в мерах — под чертой. Если мы переместим эту переменную в Columns, то увидим другую картину — вместо того, чтобы показать все возможные серии домов, Tableau создала нам один барчарт, просто просуммировав номера серий.

Как правило, измерения — это дискретные величины — как серия дома. Они существуют отдельно друг от друга, и никакие математические операции с ними не имеют смысла. Нельзя сложить дом первой серии, дом второй серии и получить дом третьей серии. Меры, напротив, — существуют в непрерывном математическом мире. Их можно делить, умножать, складывать, брать из них корни — в общем, делать любые математические операции.

По смыслу наша переменная Project Type — это измерение и, к тому же, дискретная величина. Это легко исправить — в колонке переменных надо перетащить Project Type в верхнюю часть, к Dimensions, а затем заново перебросить переменную в колонки. Мы увидим все серии домов, как это было в случае с их типами. Далее в колонки добавим Residents Count.

Получившийся результат говорит о том, что для большинства домов в наборе данных не указана серия. Как убрать это искажение?

В Tableau есть инструмент, который называется фильтр. Чтобы отфильтровать значения, надо перенести переменную в колонку Filters, которая находится между блоком переменных и рабочим листом. Мы будем фильтровать серию дома (Project Type), поэтому её туда и переносим. В открывшемся окне убираем галочку с колонки Null, далее — Apply, и получаем только те дома, где указана серия.

Новый рейтинг сложно воспринимать, пока значения не отсортированы. Отсортировать нужно колонки, поэтому кликаем правой кнопкой по переменной Project Type в поле Columns, далее выбираем меню Sort.

Колонки мы будем сортировать по размеру столбиков — это суммы количества жильцов для каждой серии дома. Для этого выбираем сортировку Sort by Field (по полю), Field Name — Residents Count, Aggregation — Sum. Также можно выбрать сортировку по убыванию (Descending).

Попробуем эту же информацию отобразить в виде другого графика. В Tableau есть кнопка для быстрых графиков — Show Me — она находится в правой верхней части экрана. Эта функция позволяет в один клик сделать другой график из переменных, которые вы используете прямо сейчас. Выберем последний график — с кружками разного размера — он называется Packed Bubbles.

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

Для начала нам нужно изменить тип графика с автоматического на Circle. В выпадающем меню на панели Marks, которая находится прямо под фильтром, выбираем Circle вместо Automatic. Получился график из точек на разной высоте — не то, что нам нужно.

Количество жильцов перетащим из Rows в Size на панели Marks. Затем Project Type из Columns — в Label. Мы получили такой же график, как создала Tableau.

Финальный штрих — расположить визуализацию по центру экрана. В верхней панели по центру есть выпадающее меню, в котором написано Standart. Если выбрать вариант Entire View, то визуализация растянется по ширине и высоте. То, что нам и нужно!

Получившуюся работу стоит сохранить. В меню (в самом верху экрана) выбираем File -> Save to Tableau Public, выбираем название для нашего проекта. Для того, чтобы сохранять работы, нужно иметь аккаунт на Tableau Public, поэтому у вас может появиться окно авторизации.