Расширенное форматирование

Вы можете использовать выражения Arcade для расширенного форматирования элементов списка и индикаторов, чтобы настроить отображение точек данных. Точка данных может представлять либо объект, либо сводную статистику (количество, среднее, минимальное и максимальное значения, сумму или стандартное отклонение) в зависимости от того, как настроен элемент. При использовании объектов одна точка данных представляет один объект. При использовании статистики каждая точка данных представляет результат этой статистики. Элемент списка отображает точки ваших данных в виде строк, где каждая строка представляет одну точку данных. Элемент индикатора отображает одну точку данных за один раз.

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

Примечание:

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

В следующей таблице приведены сведения о том, какие данные из вашего слоя будут переданы в выражение:

Имя переменнойТипОписание

$datapoint

Объект или словарь

Применяется к индикатору или списку

$reference

Словарь

Применяется к индикатору

Примечание:
При написании выражений Arcade помните следующее:
  • Ставьте запятую после каждого свойства в словаре, за исключением последнего свойства.
  • Имена атрибутов не должны содержать пробелов или специальных символов.

Расширенное форматирование в списке

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

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

На атрибуты точек данных можно ссылаться с помощью глобальной переменной $datapoint в редакторе Arcade. В следующей таблице приведен список свойств, которые могут быть возвращены из выражения в виде словаря:

СвойствоТип значенияОписание

textColor

String

Базовый цвет текста в элементе строки

backgroundColor

String

Базовый цвет элемента строки

separatorColor

String

Цвет границы внизу элемента строки

selectionTextColor

String

Цвет для текста выбранного элемента строки

selectionColor

String

Базовый цвет текста, когда элемент выбран

attributes

Dictionary

Словарь пар атрибут-значение

yourAttributeName

String, Number, Date, Boolean

Атрибут, на который можно ссылаться в шаблоне элемента строки с помощью синтаксиса {expression/your Attribute Name}

Примечание:

Функции геометрии не поддерживаются.

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

var color = IIF($datapoint.[field]>[threshold], '#F3DED7','')

В этой переменной находится поле [field] для ваших значений, и [threshold] - это значение, при котором вы хотите изменить цвет фона. Переменную можно использовать в качестве значения свойства, например в следующем примере:

backgroundColor: color,

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

Пример выражения Arcade

Использование расширенного форматирования в списке

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

  1. В конфигурации элемента перейдите на вкладку Список.
  2. В разделе Расширенное форматирование нажмите кнопку Включить.

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

  3. Создайте свое выражение форматирования в редакторе.
  4. Подсказка:
    Если вам требуется помощь по использованию любой из функций Arcade, щелкните кнопку Информация рядом с функцией для просмотра подробностей.
  5. Если вы хотите, чтобы ваше выражение выполнялось с заданным интервалом, например, если ваше выражение использует функцию Now(), включите переключатель Обновить скрипт и установите интервал обновления.
  6. В шаблоне элемента строки введите любые новые арибуты, используя следующий синтаксис {expression/yourAttributeName}.

Расширенное форматирование в индикаторе

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

При включении опорного значения в индикатор на вкладке Данные после включения расширенного форматирования доступен только тип опорного значения на основе статистики. Если вы ранее определили тип фиксированного опорного значения, он автоматически добавляется в выражение вместе с любыми коэффициентами преобразования, текстовым и цветовым форматированием. Форматирование значений, выполненное до включения расширенного форматирования, удаляется и должно быть определено в выражении с использованием шаблонов значений.

Примечание:

Предыдущее значение не поддерживается Arcade. Если вы зададите предыдущий тип опорного значения перед включением расширенного форматирования, он будет преобразован в текущее значение.

На атрибуты точек данных можно ссылаться с помощью глобальной переменной $datapoint в редакторе Arcade. В зависимости от того, является ли тип значения объектом или статистикой, $datapoint будет с типом объекта или словаря соответственно. Если на вкладке Данные была настроена опорная статистика, то глобальная переменная $reference также будет доступна в редакторе.

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

СвойствоТип значенияОписание

textColor

String

Базовый цвет текста элемента индикатора

backgroundColor

String

Цвет фона элемента индикатора

topText

String

Отображает как текст сверху

topTextColor

String

Цвет текста сверху

topTextOutlineColor

String

Цвет контура текста сверху

topTextMaxSize

String

Максимальный размер текста сверху (xx-small | x-small | small | medium | large | x-large | xx-large)

middleText

String

Отображает как текст в середине

middleTextColor

String

Цвет текста в середине

middleTextOutlineColor

String

Цвет контура текста в середине

middleTextMaxSize

String

Максимальный размер текста сверху (xx-small | x-small | small | medium | large | x-large | xx-large)

bottomText

String

Отображает как текст внизу

bottomTextColor

String

Цвет текста внизу

bottomTextOutlineColor

String

Цвет контура текста внизу

bottomTextMaxSize

String

Максимальный размер текста сверху (xx-small | x-small | small | medium | large | x-large | xx-large)

iconName

String

Название значка, указанное для индикатора

iconAlign

String

Размещение значков рядом с текстом в середине (left | right)

iconColor

String

Цвет заливки значка

iconOutlineColor

String

Цвет контура значка

noValue

Boolean

Отметка для отображения текста без значения вместо индикатора (true | false)

attributes

Dictionary

Словарь пар атрибут-значение

yourAttributeName

String, Number, Date, Boolean

Атрибут, на который можно ссылаться в полях Заголовок и Описание с помощью синтаксиса {expression/yourAttributeName}

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

var fahrenheit = Floor(($datapoint["avg_Temperature"]/5*9)+32)

Затем вы можете включить переменную в качестве значения свойства, например следующее:

bottomText: fahrenheit,

Использование этой переменной в свойстве Текст внизу дает вам выражение, которое выглядит следующим образом, где средняя температура (в градусах Цельсия) отображается в среднем тексте индикатора, а значение Фаренгейта отображается в нижнем тексте:

Пример выражения Arcade

Использование расширенного форматирования в индикаторе

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

  1. В конфигурации элемента перейдите на вкладку Индикатор.
  2. В разделе Расширенное форматирование нажмите кнопку Включить.
    Примечание:
    После включения расширенного форматирования верхние, средние и нижние текстовые поля становятся недоступными. Эти конфигурации сделаны в вашем выражении. Если вы ввели значения до включения расширенного форматирования, они автоматически добавляются в выражение.
  3. Создайте свое выражение форматирования в редакторе.
  4. Подсказка:
    Если вам требуется помощь по использованию любой из функций Arcade, щелкните кнопку Информация рядом с функцией для просмотра подробностей.
  5. Если вы хотите, чтобы ваше выражение выполнялось с заданным интервалом, например, если ваше выражение использует функцию Now(), включите переключатель Обновить скрипт и установите интервал обновления.
  6. Если вы создали новый атрибут с вашим выражением, вы можете ссылаться на него в полях Заголовок и Описание, используя синтаксис {expression/yourAttributeName}.

Значения цвета

При включении значений цвета в выражение они должны быть возвращены в виде строк (окруженных кавычками). Значения цвета, которые остаются неопределенными или недействительными, будут автоматически использовать значения по умолчанию. Допустимые типы цветовых значений включают шестнадцатеричные значения, RGB, RGBA, HSL и HSLA. Ниже приведены некоторые примеры вместе с поддерживаемым синтаксисом:

Цвета Hex

  • #090
  • #009900
  • #090a
  • #009900aa

RGB и RGBA

  • rgb(34, 12, 64)
  • rgba(34, 12, 64, 0.6)

HSL и HSLA

  • hsl(50, 33%, 25%)
  • hsla(50, 33%, 25%, 0.75)