基本笔记本命令

ArcGIS 11.4 | |  Help archive

ArcGIS Notebooks 运行 Jupyter 笔记本环境,提供基于单元格的简化工作空间。 本主题将介绍在 Notebooks 中工作的基本命令和方面,包括快捷键和最佳做法。

指定单元格类型

在笔记本中可使用三种类型的单元格。 使用指针选择单元格后,可以使用工具栏上的下拉列表更改单元格类型。

以下是可用的三种类型:

  • 代码 - 笔记本将使用 Python 语言解释代码单元格中的所有内容。 编写 Python 代码时输入某些字符串,例如 from 或等号 (=),则会提示笔记本自动为这些字符串重新设置颜色或突出显示它们。 以数字符号 (#) 开头的任何代码行都将被解释为注释,以绿色斜体显示,且不会被笔记本当作代码运行。
  • Markdown - 笔记本将使用 Markdown 语言解释 Markdown 单元格中的所有内容。 Markdown 语言是一种用于格式化富文本的简单语言,由 GitHub 等客户端广泛使用于 Internet。 有关使用 Markdown 的参考信息,请参阅线上 Markdown 指南。 运行 Markdown 单元格会将其内容转换为富文本。 任何以一个或多个数字符号 (#) 开头的行都将被格式化为标题。 您还可以将原始 HTML 代码添加到 Markdown 单元格。
  • Raw - 笔记本不会处理 Raw 单元格中的内容。 该单元格类型很少使用。

使用富文本和代码注释可以使笔记本对于您与之共享的用户而言更具价值和可读性。

处理单元格

若要让笔记本运行代码,则该代码必须包含于单元格中。 您可以使用单元格中的代码定义变量并运行 Python 库中包含的函数。

要定义变量,请运行包含变量语句的单元格,包括等号 (=)。 例如,默认的笔记本模板启动时即已定义变量 gis。 如果您运行的单元格中仅包含变量名称 gis,则笔记本将返回您 ArcGIS Enterprise 门户的 URL 作为输出。

注:

使用感叹号(例如 !cd <directory>)来更改命令行中的目录的 iPython 命令将无法在 ArcGIS Notebooks 中使用。 但是,可以使用没有感叹号的命令,例如 cd <directory>

注:

创作笔记本时,使用工作空间目录中目录和文件的完整路径。

例如,使用 /arcgis/home/test.gdb 而非 home/test.gdb

要运行 Python 函数,请提供函数的语法以及函数所需或接受的任何参数。 请参阅下方的在单元格中使用函数部分了解详细信息。

您可以按 Shift+Enter 创建单元格,也可单击菜单功能区上的插入,即可在当前单元格的上方或下方插入新单元格。

导入库和模块

在默认的笔记本模板中,ArcGIS Notebooks 仅导入 ArcGIS API for Python 中的 gis 模块。 通常,您可能需要使用笔记本运行时中的其他可用 Python 库。 要访问这些库,请运行 import 命令。

查看 ArcGIS Notebooks 中的所有可用 Python

创建一个单元格并输入 import <library>,然后运行该单元格。

ArcGIS API for PythonArcPy 中,以及在某些其他情况下,Python 库按模块进行组织。 要访问模块中的库,请使用 from 语句声明要访问的模块,然后使用 import 语句声明库。 例如,要在 ArcGIS API for Python 中调用 mapping 模块中的 WebScene 库,请在单元格中运行以下命令:

from arcgis.map import Scene

ArcGIS Notebooks 在运行单元格时具有自动完成功能。 您可以使用这一功能来帮助您找到所需的库和模块。 在单元格中,输入命令的第一部分,然后按 Tab 键激活自动完成功能。 将自动出现能够完成该命令的可能值。

例如,在您输入 arcgis. 并按下 Tab 键后,笔记本将提供 ArcGIS API for Python 中所有可用模块的下拉列表。 您可以使用向上和向下箭头来浏览列表;找到所需选项后,按 Enter 键将其插入代码行。

了解有关 ArcGIS API for PythonArcPy 在笔记本中的工作原理的详细信息,请参阅以下主题:

在单元格中使用函数

要在笔记本中执行分析和处理数据,可以使用 Python 函数。 函数包含在 PythonPython 库中,且通常使用输入参数来指定它们的运行方式及运行对象。

笔记本的自动完成工具可以通过提供可用内容的下拉列表来帮助您查找函数。 对于任意库的 bar,输入 bar.,并按 Tab 键显示其中可用的函数。

例如,要查看 arcgis.features 模块中“汇总数据”库中可用的工具,可输入以下代码后按 Tab 键:

features.summarize_data.

自动完成工具将显示库中可用工具的下拉列表。

通常,笔记本中的命令具有必需或可选参数,参数中提供运行命令所需的信息。 如果命令的语法以一组空括号 (()) 结束,则该命令需要或可以包含可供添加的可选参数。

在括号内输入参数,并用逗号分隔多个参数。 要查看任何函数的必填参数和可选参数的字符串,请将其空括号替换为问号并运行该单元格。 随即显示该函数的 docstring,其中列出了所有参数。

例如,笔记本编辑器分析窗格中的所有可用工具都需要参数。 将此窗格中的工具添加到单元格时将插入该工具的 ArcGIS API for Python 语法,并以空括号结尾。 如果您尝试在单元格中运行此语法而不提供一个或多个参数,则单元格将运行失败并提供错误消息。

如需在“汇总数据”库中运行聚合点工具,请在分析窗格中找到该工具并将其添加到新单元格,或在工具语法中输入以下内容:

features.summarize_data.aggregate_points()

要查看该工具的参数列表,请按如下所示修改语法并运行单元格:

features.summarize_data.aggregate_points?

该工具的 docstring 参考窗口随即打开。 可使用该参考右上角的按钮展开或关闭该窗口。

操作单元格时请注意以下事项:

  • 对于任何函数 foo(),输入 foo? 并按 Enter 键以显示函数的 docstring,此内容为函数的描述。
  • 若以 ! 启动单元格,则单元格中的内容会在笔记本容器中作为 bash 命令运行。

运行单元格

运行单元格时,将运行其代码并执行其中的所有操作。 您只能运行整个单元格,而不能运行单元格的子部分或特定的代码行。 单元格可以包含一行或多行代码。

要运行选定的单元格,请单击工具栏上的运行按钮,或单击运行 > 运行所选单元格。 也可以按 Ctrl+Enter 运行鼠标指针所在的单元格。

要手动停止正在运行的单元格,请单击工具栏上的中断核或菜单中的> 中断核。 您也可以单击工具栏中的方形停止按钮。

每个代码单元格的左边都有一个 In [ ] 元素。 如果单元格尚未运行,或者先前运行的单元格已清除其输出,则括号将为空。 单元格运行时,括号内将包含星号:In [*]。 单元格完成运行时,In [ ] 括号将填充一个数字,表示单元格的运行顺序。 由于笔记本中的单元格可以按任何顺序运行并可多次运行,所以笔记本单元格中的 In [ ] 数字可能不按顺序排列。

注:

Markdown 单元格会在运行前一直保留一个 In [ ] 元素,运行后该元素消失,单元格内容变为富文本。

当运行的单元格中有一行代码生成了输出时,输出将在笔记本中该单元格下方显示。 输出旁边将出现一个 Out [ ] 元素,对应相应单元格中的 In [ ] 元素的内容。

核的运用

当您启动笔记本时,核会随之一同启动。 核会运行您在笔记本中运行的代码。 当您在笔记本中运行单元格时(即填充其 In [ ] 元素),在已运行单元格中定义的变量将存储于核的内存中。

要重启笔记本的核并清除内存中的变量,请单击工具栏上的重启核或菜单中的> 重启核。 要重启核、清除内存中的变量,并按顺序运行笔记本中的所有单元格,请单击工具栏上的重启核并运行所有单元格或菜单中的> 重启核并运行所有单元格

当您使用完笔记本后,单击> 关闭核关闭笔记本的核并清除所有内存中的变量。 核将停止运行,但不会删除已运行单元格的输出。

当笔记本长时间处于空闲状态时,核将自动关闭并清除所有内存中的值。 默认时间段为 24 小时,但您的站点管理员可以缩短或延长该时长设置。