Основные команды Notebook

ArcGIS Notebooks запускает среду Jupyter notebook, которая обеспечивает простую табличную рабочую область. В разделе описываются основные команды и аспекты работы Notebooks, включая комбинации клавиш и рекомендации.

Задание размера ячейки

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

Доступные типы ячеек в ниспадающем списке.

Доступны следующие три типа ячеек:

  • Code – блокнот интерпретирует все содержание ячейки как код на языке Python. При написании кода Python, ввод некоторых строк, таких как from или знака равно (=), автоматически меняет их цвет или подсвечивает их для облегчения чтения. Любая строка кода, которая начинается с решетки (#) будет интерпретироваться как комментарий, обозначаться зеленым курсивом и не будет выполняться блокнотом как код.
  • Markdown – блокнот интерпретирует все содержание ячейки как код на языке Markdown. Это простой язык для форматирования усовершенствованного текста, используемый в интернете такими клиентами, как GitHub. См. онлайн-справочник Markdown Guide с инструкциями по использованию Markdown. Запуск ячейки Markdown преобразует содержащийся в ней текст в формат RTF. Любая строка, начинающаяся с одной или нескольких решеток (#), будет форматироваться как заголовок. Вы также можете добавить в ячейку Markdown сырой код HTML.
  • Raw NBConvert – блокнот не обрабатывает содержание ячейки Raw NBConvert. Этот тип используется редко.
Примечание:

Также в ниспадающем списке доступен тип ячейки Heading. Однако этот тип ячеек больше не используется в среде Jupyter notebook. Выбор этого типа ячейки переключает ее в тип Markdown с присоединением решетки (#), которая обозначает в Markdown заголовок высшего уровня.

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

Работа с ячейками

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

Чтобы задать переменную, запустите ячейку, которая содержит выражение переменной, включая знак равно (=). Шаблон блокнота по умолчанию, например, запускается с заданной переменной gis. Если вы запустите ячейку, содержащую только одно имя переменной, gis, блокнот вернет URL-адрес портала ArcGIS Online в качестве результата.

Примечание:

Команды iPython, использующие восклицательные знаки, такие как !cd <directory>, для изменения каталогов из командной строки, не будут работать в ArcGIS Notebooks. Вместо этого используйте команды без восклицательных знаков, такие как cd <directory>.

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

Вы можете создать новую ячейку, нажав Shift+Enter или щелкнув Вставить на ленте меню, что дает возможность вставить новую ячейку выше или ниже текущей.

Опции панели инструментов ячейки

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

  • Нет – не показывать панели инструментов ячеек.
  • Редактировать метаданные—Введите метаданные для каждой ячейки с помощью JSON.
  • Необработанный формат ячеек – необработанные ячейки позволяют напрямую записывать результат; содержимое этих ячеек блокнотом не оценивается.
  • Слайд-шоу—Определяет, как каждая ячейка будет отображаться в слайд-шоу. Это удобно при представлении кода.
  • Вложения—Управляет связанными сложениями в каждой ячейке в рабочей области блокнота.
  • Теги—Создавать и управлять тегами для каждой ячейки в рабочей области блокнота.

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

Импорт библиотек и модулей

В шаблоне блокнота по умолчанию, ArcGIS Notebooks импортирует только модуль gis из ArcGIS API for Python. Обычно вам требуются дополнительные библиотеки Python, доступные в среде Notebook. Чтобы получить доступ к этим библиотекам, запустите команду import.

Все библиотеки Python, доступные в ArcGIS Notebooks

Создайте новую ячейку и введите import <library>, затем запустите ее.

В ArcGIS API for Python и ArcPy, а также в некоторых других случаях, библиотеки Python собраны в модули. Чтобы получить доступ к библиотеке в модуле, объявите модуль с помощью выражения from, затем объявите библиотеку с помощью выражения import. Например, чтобы вызвать библиотеку WebScene из модуля mapping в ArcGIS API for Python, запустите в ячейке следующую команду:

from arcgis.mapping import WebScene

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

Например, если вы ввели arcgis. и нажали Tab, в блокноте откроется ниспадающий список со всеми модулями, доступными в ArcGIS API for Python. Для перемещения по списку используйте стрелки вверх и вниз; когда вы найдете нужный вариант, нажмите Enter, чтобы вставить его в строку кода.

Дополнительные сведения о работе ArcGIS API for Python и ArcPy в блокнотах см. в следующих разделах:

Использование функций в ячейке

Для выполнения анализа и работы с данными в блокнотах используются функции Python. Функции находятся в библиотеках Python, они часто используют входные аргументы, чтобы определить способ выполнения и обрабатываемые данные.

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

Например, для просмотра инструментов, доступных в библиотеке Summarize Data модуля arcgis.features, введите следующий код и нажмите Tab:

features.summarize_data.

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

Часто команда блокнота имеет обязательные или дополнительные аргументы - параметры, которые предоставляют информацию для выполнения команды. Если синтаксис команды заканчивается пустым набором кавычек (()), команде необходимо добавить обязательные аргументы или указать дополнительные.

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

Например, все инструменты, доступные на панели Анализ редактора блокнота, требуют аргументов. Добавление в ячейку инструмента с этой панели приведёт к вставке его синтаксиса ArcGIS API for Python, заканчивающегося пустыми кавычками. Если вы попытаетесь запустить этот синтаксис не указав один или несколько аргументов, появится сообщение об ошибке.

Если вы хотите запустить инструмент Агрегировать точки из библиотеки Summarize Data, необходимо найти инструмент на панели Анализ и добавить его в новую ячейку, или просто ввести следующую строку:

features.summarize_data.aggregate_points()

Чтобы просмотреть список аргументов этого инструмента, измените строку и запустите ячейку:

features.summarize_data.aggregate_points?

Откроется окно справки docstring для данного инструмента. В нем есть кнопки для развертывания или закрытия окна, в правом верхнем углу.

Когда вы работаете в ячейке, имейте в виду следующее:

  • Для любой функции foo(), наберите foo? и нажмите Enter, чтобы отобразить строку документации с описанием функции.
  • Если ячейка начинается с !, ее содержание будет работать в контейнере блокнота как пакетная команда.

Запуск ячейки

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

Чтобы запустить выбранную ячейку, щелкните кнопку Запустить на панели инструментов или щелкните Ячейки > Запустить ячейки. Также можно нажать Ctrl+Enter, чтобы запустить ячейку, в которой находится курсор мыши.

Чтобы вручную остановить работу ячейки, щелкните Ядро > Прервать. Также можно щелкнуть квадратную кнопку остановки на панели инструментов.

Слева от каждой ячейки кода находится элемент In [ ]. Если ячейка еще не запускалась, или результаты предыдущего запуска ячейки были удалены, скобки будут пусты. Если ячейка в данный момент работает, в скобках будет звездочка: In [*]. Когда работа ячейки завершена, в скобках In [ ] появляется число, означающее порядок выполнения ячеек. Поскольку ячейки в блокноте могут запускаться в любом порядке и несколько раз, число In [ ] может не соответствовать порядковому номеру.

Примечание:

Ячейки Markdown содержат элемент In [ ] до запуска, после запуска элемент исчезает, а содержание ячейки становится текстом в формате RTF.

Когда строка кода из исполняемой ячейки создает выходные данные, они отображаются в блокноте под ячейкой. Рядом с выходными данными находится элемент Out [ ], который соответствует содержанию элемента In [ ] соответствующей ячейки.

Работа с ядром

При запуске нового блокнота загружается ядро. Это ядро исполняет код, запускаемый в блокноте. Когда вы запускаете ячейки в блокноте (заполняя из элементы In [ ]), переменные, заданные в исполняемых ячейках, сохраняются в памяти ядра.

Чтобы перезапустить ядро блокнота и очистить переменные в памяти, щелкните Ядро > Перезапустить. Если вы хотите перезапустить ядро, очистите переменные в памяти, затем последовательно запустите все ячейки блокнота, щелкните Ядро > Перезапустить & Запустить все.

Когда вы закончили активную работу с блокнотом, щелкните Ядро > Выключить, чтобы отключить ядро и очистить переменные в памяти. Ядро останавливает работу, но выходные данные ячеек не стираются.