Работа с параметрами в Tableau, ч. 1

Обзор параметров

В начале обсуждения поговорим о свойствах параметра. Пользователи могут выбирать и изменять значение параметра так же, как фильтра. Элементы управления параметром интерактивны и позволяют пользователю влиять на визуализацию. Во-вторых, все возможные значения параметра должны быть совместимыми по типу данных. Например, если одно из значений типа string  (строка), остальные значения также должны быть строками.

Значения параметров могут быть:

  1. Заданы пользователем. 
  2. Введены в отчете потребителя.
  3. Заполнены значениями поля из источника данных.
  4. Добавляться динамически при открытии отчета (новый функционал в версии 2020.1)

Кроме того, вы можете использовать параметры при создании пользовательского запроса SQL. Однако будьте осторожны, так как это может серьезно повлиять на производительность вашей визуализации, о чем подробно рассказано в этой статье Энтони Бола (Anthony Ball) из цикла статей «Tableau Performance Checklist».

Использование параметра

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

  1. Создание параметра: есть пара способов создания параметра. Самый прямой – нажать правой кнопкой мыши по пустому пространству на панели данных (data pane) и выбрать Create Parameter (Создать параметр). После этого на экране откроется окно Create Parameter (Создать параметр), описанное ниже.
  2. Отображение элемента управления параметром: нажмите правой кнопкой мыши по желаемому параметру в разделе Parameters (Параметры) панели Data (Данные). Выберите Show Parameter Control (Показать элемент управления параметром), и на визуализации отобразится элемент управления параметром такой же, как элемент управления фильтром:
Show Parameter Control
  1. Использование параметра в вычислениях: использовать параметры можно различными способами. Помните о четырех стандартных случаях использования, которые мы описали в начале статьи (фильтры (filters), бины (bins), линии референс значений (reference lines), вычисляемые поля (calculated fields)). Мы рассмотрим их в последующих статьях данного цикла, но всякий раз, когда вы собираетесь ввести константу, Tableau скорее всего предоставит вам следующий выбор:
Create a new parameter
  1. Использование вычислений в области отображения: последний шаг – это использование вычислений на вашей области отображения. Например, если ваш параметр — это N-ное месте в списке, то он может использоваться в фильтре. Если ваш параметр – это размер бина, то вы можете использовать его в гистограмме.

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

Советы по производительности

Самый лучший дашборд, который когда-либо видело человечество, абсолютно бесполезен, если его загрузка занимает пять минут. Скорость особенно важна в эру высокоскоростного Интернета.
Производительность должна ставиться во главу угла при использовании параметров. То, что может хорошо работать в локальном окружении Tableau Desktop, может привести к серьезным проблемам из-за недостатков ресурсов при развертывании Tableau Server для сотни одновременно работающих пользователей.

Параметры в вычислениях на уровне строки

Помните, что в шаге № 1 была возможность заполнить список из поля. Если измерение включает в себя множество различных значений, то это может серьезно повлиять на производительность.

Для иллюстрации рассмотрим пример. Допустим, я хочу создать параметр, использующий Имя клиента (Customer Name) для заполнения возможных значений в формуле, где я использую функцию IF. В базе данных моей воображаемой компании содержится семьдесят миллионов имен клиентов. Такая задача может не только вызвать замедление работы дашборда, но даже привести к падению сервера.

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

Параметры и пользовательский SQL-запрос

Знали ли вы, что можно использовать параметр в пользовательском SQL-выражении? Хочется, однако, предостеречь  от использования пользовательского (Custom SQL) SQL-запроса. Убедитесь, что вы точно знаете, что делаете, потому что неверные действия могут быстро сломать рабочую книгу (work book).

В Tableau есть собственный язык запросов, который используется для подключения к источнику данных посредством драйвера. Когда вы пишите собственный SQL-запрос, он включает в себя язык запросов Tableau в качестве подзапроса. Вы можете получить неожиданные последствия, если не понимаете как именно сформируется ваш SQL-запрос.

При использовании параметров, гибкость множественных значений для одной переменной может привести к проблемам с производительностью вследствие выполнения SQL-запроса. Tableau кэширует (сохраняет в памяти) запросы для оптимизации производительности, и если пользователь изменяет значения параметра, возможно, что Tableau не сможет их сохранить. Попробуйте ограничить параметры в пользовательском SQL-запросе только часто используемыми значениями или ограничить диапазон возможных значений параметров.

Свойства параметров

Далее  мы подробно рассмотрим различные свойства окна Create Parameter (Создать параметр).Окно Create Parameter (Создать параметр) выглядит приблизительно так:

Tableau: Create Parameter window

Давайте рассмотрим каждое из этих свойств параметра:

Name (Имя)

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

Comment (Комментарий)

После нажатия на кнопку в конце поля Name (Имя) открывается текстовая область с параметрами форматирования, в которой вы можете при желании добавить комментарий. Можно добавить комментарий о том, что делает этот параметр и т.п. Рекомендуется использовать комментарий в том случае, когда к одной рабочей книге имеет доступ множество людей, или при использовании данного параметра на множестве листов (worksheets).

Data type (Тип данных)

Существует шесть различных типов данных: float (число с плавающей точкой), integer (целое число), string (строка), Boolean (логическое выражение правда/ложь), date (дата) и date & time (дата и время). Для возможных значений, принимаемых параметром типа Boolean, вы можете давать свои названия(aliases). 

Current Value (Текущее значение)

Текущее значение параметра.

Value when workbook opens (Значение, когда открывается книга)

Значение, которое будет подставляться при открытии книги. Оно может быть значение из параметра или из расчетного поля в источнике.

Display Format (Формат отображения)

Вы можете отформатировать параметр для отображения в нужном виде, используя любые стандартные типы форматирования, такие как Standard Currency (Стандартная валюта), Scientific (Научный формат) и так далее, подходящие для данного типа данных. Рекомендуется отражать в формате отображения имеющийся в вашей области отображения формат.

Tableau Display Format

Allowable Values (Допустимые значения)

Данное свойство может иметь одно из трех значений: all (все), list (список) или range (диапазон). Для типа параметра Boolean данная опция недоступна. Вариант All (Все) – самый простой. Он позволяет клиенту ввести любое значение в элемент управления. При вводе будут игнорироваться значения, не соответствующие выбранному типу данных.

Вариант List (Список) – это список, который вы можете задать самостоятельно. Вы даже можете отдельно определить ярлыки для списка. Например, мы хотим использовать три различных значения – 1, 2 и 3, но хотим, чтобы пользователь видел список с текстов вместо цифр. Поле Value (Значение) должно соответствовать типу данных, а в поле Display As (Отображать как) может быть всё, что угодно.

Вы можете вставить фиксированный набор значений из другого поля с помощью кнопки Fixed справа от списка. Также вы может сделать динамически обновляемый список, выбрав опцию When workbook opens. 

Вариант Range (Диапазон) доступен для параметра типа float, integer, date and date & time. Представьте параметр в виде линейки с числами. Диапазон позволяет  определить начальную точку на линейке, конечную точку и приращение значения между делениями линейки.

Вы можете импортировать эти значения из другого параметра при помощи кнопки Set from Parameter (Задать из параметра).

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

Эта опция дает вам отличную возможность контролировать создание вашего параметра.

Пример использования – лучшие N

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

Я хочу показать лучшие 10 товаров моей организации с точки зрения прибыли

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

Top N Filter Product Name

Что делать, если вместо фиксированного количества товаров я хочу дать пользователю отчетом возможность самому определить, сколько лучших товаров он хочет увидеть? Ответ – использовать параметр.

Начнем со следующей визуализации:

Sum of Profit bars listed by item

Давайте выполним пример, используя  четыре шага создания параметра из первой части статьи. 

Использование вычислений в области отображения: в списке ранее этот шаг был под
№ 4. В этом примере мы с него начнем. В данном случае мы сделаем фильтр Top N (Лучшие N):

Filter dialogue box

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

Использование параметра в вычислениях: В окне Filter (Фильтр) мы можем задействовать в фильтре параметр. Если параметр был сделан до создания данного фильтра Top N, то он появится в выпадающем списке для выбора количества лучших элементов для показа в области отображения. Поскольку параметр пока не создан, мы выберем Create a New Parameter (Создать новый параметр).

Create new parameter

Создание параметра: помните, что существуют различные способы попасть в окно Create Parameter (Создать параметр). Для нашего примера укажем следующие опции.

Create Parameter dialogue box

Отображение элемента управления: после выполнения шагов в данном порядке, Tableau автоматически отобразит элемент управления параметром в области отображения.

Show parameter control

Можно отобразить элемент управления параметром вручную, нажав на желаемый параметр правой кнопкой мыши и выбрав «Show Parameter Control» («Показать элемент управления параметром»).

Show parameter control manually

Поздравляем! Вы только что создали новый фильтр Top N с использованием параметра, позволяющий пользователю изменять количество отображаемых лучших товаров.

Top N filter using a parameter control

Различие между фильтрами и параметрами

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

Region filter control
Region parameter control

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

  • Фильтры относятся к источнику данных. Параметры относятся к рабочей книге (и таким образом могут одновременно использоваться в нескольких источниках данных).
  • Фильтры в целом медленнее.
  • Параметры могут использоваться в фильтрах.
  • Фильтры создаются на уровне листа. Параметры могут повторно использоваться во всей рабочей книге.
  • Значения фильтров ограничены данными. Значения в параметрах можно задать вручную.

В этом и заключаются важные различия, которые  расширяют возможную применимость параметров.

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

Редактор вычисляемого поля

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

Tableau Calculated Field Editor Colors

Поскольку параметры присутствуют на панели данных, точно так же, как и другие поля, вы можете перетащить их в редактор формул.

Использование параметров в расчетных полях

Для первого примера мы используем данные за сезон о десяти наиболее ценных кандидатах в игроки NBA в 2015-16 годах. В исходной области отображения мы увидим десять наиболее ценных кандидатов (Player Name) с указанием количества сыгранных игр (Game Played), среднего времени игры (Avg. minutes) и среднего количества очков за игру (Avg. Points), показанного в виде горизонтальных столбцов.

Tableau Horizontal Bar Chart

Дадим пользователю отчетом возможность сравнивать игроков различными способами. Очень распространенный способ сравнения игроков – это нормализовать количество минут. Например, Кайл Лори (Kyle Lowry) участвовал в играх в среднем 37 с небольшим минут, в то время как Крис Пол (Chris Paul) участвовал в играх только 32 минуты. При данном способе сравнения чаще всего в качестве метрики используется приведение 36 минутам. Делая так, мы вычислим количество очков за игру так, будто бы все игроки играли 36 минут.

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

Давайте создадим параметр, учитывающий эти три сценария. Еще раз напомним, что для создания параметра необходимо выполнить следующие четыре шага:

  1. Создание параметра
  2. Отображение элемента управления параметром
  3. Использование параметра в вычислениях
  4. Использование вычислений в области отображения

Давайте начнем.

Сначала создадим новый параметр.

После этого создаем расчетное поле

Tableau calculated field

Мы можем заменить меру SUM of Points (Сумма очков) в колонке данным вычисляемым полем, которое я назвал Scoring Statistic (Статистика по очкам). Мы хотим, чтобы в области отображения автоматически выполнялась сортировка от большего к меньшему на основании выбранной статистики, поэтому выполняем вычисляемую сортировку по убыванию по величине Player Name (Имя игрока) при помощи Scoring Statistic (Статистика по очкам).

Теперь можно отобразить элемент управления параметром, чтобы получить следующую визуализацию:

Show parameter control

Получилось!

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.