Исследуйте выражения Arcade на веб-карте

Исследуйте надписи Arcade

Веб-ГИС позволяет вам обмениваться, заимствовать и повторно использовать данные из различных источников. Вы больше не ограничены данными, которые собирает и хранит ваша организация. Однако данные из других источников часто форматируются таким образом, что они не соответствует вашим конкретным потребностям. ArcGIS Arcade позволяет адаптировать данные других людей и сделать их подходящими для вашей визуализации и повествования. Это освобождает вас от ограничений, связанных со структурированием данных.

Вы начнете это учебное пособие с изучения примера использования Arcade для форматирования надписей на карте из поля date.

  1. Откройте приложение Anti-Shipping Activity Messages.

    Символы на этой карте обозначают враждебные действия против кораблей и моряков, также известные как пиратство. Эти данные были созданы Национальным агентством геопространственной разведки (NGA) и командой ArcGIS Living Atlas of the World Esri.

    Примечание:

    Чтобы узнать больше о данных, щелкните кнопку Информация под элементами управления навигацией на карте.

    Кнопка Информация

  2. Для изучения карты ее можно перемещать и изменять масштаб.
  3. Щелкните любую точку на карте.

    Появится всплывающее окно с описанием враждебной активности.

    Всплывающее окно

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

  4. Откройте веб карту Anti-Shipping Activity Messages.
  5. Увеличивайте карту, пока не появятся надписи.

    Надписи карты

    На каждой точке надписан год.

  6. При необходимости щелкните в панели Содержание (темной) кнопку Слои, чтобы открыть панель Слои.

    Кнопка Слои

  7. На панели Слои рядом с Anti-Shipping Activity Messages щелкните кнопку Опции.
  8. Щелкните Показать таблицу.

    Опция Показать таблицу

    Появится таблица атрибутов слоя.

  9. Прокрутите таблицу, чтобы просмотреть поля.

    Нет поля с указанием года. Присутствует только поле Event Date. Оно включает год, а также месяц, дату и время каждого происшествия.

    Поле Event Date.

  10. Закройте таблицу.
  11. На панели инструментов Настройки (светлая) щелкните кнопку Надписи, чтобы открыть панель Надписи объектов.
  12. В разделе Поле надписи рядом с Годом, щелкните кнопку выражения.

    Кнопка Выражение

    Откроется окно конструктора выражений. Год - это не имя поля, а имя выражения.

    Окно Конструктор выражений

    Выражением является Year(ToUTC($feature.dateofocc)). Это короткое выражение извлекает только информацию по году из поля Event Date. Year() - это функция, которая извлекает соответствующее число. ToUTC() - еще одна функция, преобразующая формат даты. $feature.datofocc - это функции в поле Event Date, которое также называется dateofocc.

  13. Над выражением щелкните кнопку Запустить.

    Кнопка Запустить

    Результат появится под выражением. Вместо более длинной даты отображается год.

    Выходные данные

    Результатом этого выражения являются надписи, которые выглядят как 1990 вместо 1990-06-02T21:00:00-03:00. Более короткие надписи облегчают понимание и делают карту менее загроможденной.

  14. Закройте окно конструктора выражений.
    Примечание:

    Чтобы увидеть другой пример приложения с надписями Arcade, см. USGS Global Earthquakes. Выберите слой Recent Earthquakes – Events by Magnitude и откройте панель Надписи, чтобы просмотреть выражение, обозначающее только недавние землетрясения.

Исследуйте всплывающие окна Arcade

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

  1. На карте щелкните любой розовый, красный или фиолетовый символ, чтобы открыть всплывающее окно.
    Примечание:

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

    Всплывающее окно

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

  2. На панели инструментов Настройки щелкните кнопку Всплывающие окна, чтобы открыть панель Всплывающие окна.
  3. Щелкните Атрибутивные выражения.

    Атрибутивные выражения

    Во всплывающем окне используются три выражения. Date Conversion аналогично выражению, используемому для надписей. Hostility Type Classification и Hostility Type Color определяют категорию инцидента.

  4. Щелкните Hostility Type Color.

    Выражение Hostility Type Color

    Это выражение перечисляет значения из поля hostilitytype_1 и присваивает каждому цвет, определяемый кодами hex.

    Выражение Hostility Type Color

    Например, в строке 3 сказано, что когда тип (значение в поле hostilitytype_1) равен 1, цвет устанавливается на #e055a8 (розовый). Серый текст в выражении представляет собой комментарий, содержащий описание каждого типа.

    Далее вы увидите, как это выражение используется во всплывающем окне.

  5. Закройте окно конструктора выражений.
  6. В панели Атрибутивные выражения щелкните стрелку Назад.

    Стрелка Назад

  7. На панели Всплывающие окна щелкните Текст. Щелкните Редактировать текст.

    Кнопка Редактировать текст

    Большая часть текста всплывающего окна получена из поля description, но полужирный текст в верхней части всплывающего окна получен из двух выражений.

  8. Выделите два выражения, {expression/expr1} и {expression/expr0}, и щелкните кнопку Цвет шрифта.

    Кнопка Цвет шрифта

    На вкладке Управляемый данными выбрано выражение Hostility Type Color.

    Выражение Hostility Type Color

    Цвет этих двух строк текста определяется выбранным выражением.

  9. Щелкните Готово.

    Аналогично задается цвет ссылки here в конце текста описания.

  10. Щелкните Отмена.
  11. На карте щелкните другие символы, чтобы увидеть, как цвет текста меняется в зависимости от типа враждебности происшествия.

    Всплывающее окно

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

    Примечание:

    Чтобы увидеть другой пример приложения со всплывающими окнами Arcade, см. Coral Reef Bleaching Stations. Слой Coral Reef Station – Null использует четыре выражения для создания всплывающих окон, в том числе одно, которое создает URL-адреса для изображений.

Исследуйте символы Arcade

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

  1. На панели инструментов Настройки щелкните кнопку Стили, чтобы открыть панель Стили.

    Кнопка Стили

    В разделе Выбрать атрибуты перечислены два элемента. Это не поля из таблицы атрибутов, а выражения Arcade. Одно из этих выражений - Current Year Incidents - определяет цвета символов карты. Другое - Set the Symbol Size by Map Scale - определяет их размер.

  2. Щелкните Set the Symbol Size by Map Scale.

    Откроется окно конструктора выражений. В этом выражении используется то же поле Event Date (dateofocc), которое вы видели в выражении надписывания.

    Задайте выражение Symbol Size by Map Scale

  3. Прочитайте строки с 8 по 13:
    When(
    vs > 72000000, Old,
    vs > 1700000, 1 + Old,
    vs > 8000000, 2 + Old,
    vs > 3000000, 3 + Old,
    vs > 1000000, 4 + Old, 5 + Old)

    Переменная vs была определена ранее в выражении как $view.scale и относится к текущему масштабу карты. Переменная Old также была определена ранее в выражении и задает размер каждого символа. Для инцидентов в текущем году значение Old равно 9. Для более ранних инцидентов значение Old равно 3,5.

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

    Примечание:

    Переменная Old определяется в строке 6: var Old = Iif (dataYear != Year(Today()), 3.5, 9).

    В этой строке указывается, что если год происшествия (dataYear) не совпадает (!=) с текущим годом (Year(Today())), то значение переменной Old устанавливается равным 3,5. В противном случае (если год совпадает с текущим) значение устанавливается равным 9. В результате этого выражения отображаются большие символы для недавних инцидентов и маленькие символы для более старых инцидентов.

  4. Закройте окно конструктора выражений.
  5. Увеличьте или уменьшите карту.

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

    Размеры желтых символов в разных масштабах

    Примечание:

    Чтобы увидеть другой пример приложения с символами Arcade, см. Live Stream Gauges. На этой карте используется аналогичное выражение для управления размером символов в зависимости от масштаба карты. На карте также использует выражение для определения статуса каждого объекта.

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

ArcGIS Arcade - важный инструмент для интерактивных карт, позволяющий создавать карты, соответствующие историям, которые вам нужно рассказать, а не просто имеющимся у вас данным. Arcade преобразует данные в мощные информационные выражения. Ознакомьтесь с руководством Начало работы с ArcGIS Arcade, чтобы научиться писать выражения на собственных картах.

Приложение Anti-Shipping Activity Messages, которое вы изучали в этом учебном пособии, отображает активность на поверхности океана. Попробуйте следующее пособие из этой серии Explore a 3D app, чтобы узнать, как интерактивные карты и приложения могут отображать глубину океана.