ArcGIS Pro 中的笔记本

基于 Jupyter Notebook 构建的 ArcGIS Notebooks 是一个开源 web 应用程序,可用于创建和共享包含实时 Python 代码、可视化效果和叙事文本的文档。 将 ArcGIS Notebooks 集成到 ArcGIS Pro 后,可以执行分析并在地理环境中立即查看结果,与新兴数据进行交互,记录并自动化工作流,以及将其保存以供稍后使用或共享。ArcGIS Notebooks 用途包括数据清理和转换、数值模拟、统计建模、计算机学习、管理任务等。

ArcGIS Pro 中的所有 Python 功能均可通过 ArcGIS Notebooks 使用,其中包括核心 Python 功能、Python 标准库、ArcPyArcGIS API for Python 以及 ArcGIS Pro 所随附的众多第三方库,例如 NumPy 和 pandas。 ArcGIS Pro 可以使用 ArcGIS Pro 包管理器通过开源库进行扩展。

当开源 Jupyter Notebooks 在 ArcGIS Pro 应用程序中本地运行时,Esri 的集成 Jupyter Notebook 体验也可用于 ArcGIS OnlineArcGIS Enterprise 门户。

了解有关 ArcGIS Notebooks 的详细信息

如果您正在寻找交互式 Python 终端来测试或运行代码的简短片段,而无需高级笔记本功能,请参阅 Python 窗口

如何在 ArcGIS Pro 中使用 ArcGIS Notebooks

要创建笔记本,请单击功能区上的插入选项卡,然后单击新建笔记本按钮 新建笔记本。 或者,可以打开目录窗格,浏览至工程目录,右键单击文件夹,然后选择新建 > 笔记本新建笔记本

已添加到工程中的 ArcGIS Notebooks 将在目录窗格的 Notebooks 文件夹 Notebooks 下列出。 使用 ArcGIS Pro 创建的 Notebook 会自动添加到您的工程中。 要将现有的笔记本添加到工程中,请右键单击 Notebooks 文件夹,然后选择添加笔记本 添加笔记本,或者单击插入功能区上添加笔记本按钮旁边的下拉箭头,然后选择添加笔记本

要在工程中打开现有笔记本,请浏览到目录窗格中的笔记本文件,然后双击笔记本,或者右键单击笔记本并选择打开笔记本

笔记本将在与标准 Jupyter Notebook 类似的用户界面中打开,但在 ArcGIS Pro Notebook 选项卡中具有新建按钮 新建笔记本保存按钮 保存中断核按钮 取消。 打开笔记本视图时,笔记本功能区会自动出现。 有关如何与 Jupyter Notebook 交互的详细信息,请参阅 Jupyter Notebook 用户界面文档

要导出笔记本,请使用导出下拉菜单 脚本 将笔记本导出到 Python (.py) 或 HTML (.html) 文件。

附加帮助

可在笔记本视图帮助菜单浏览 Jupyter Notebook 用户界面、键盘快捷键、标记和其他相关主题。

Tab 补全功能将根据指针的位置提供上下文帮助。 可以通过在对象或库名称后键入点之后按下 Tab 键来查看方法和属性。 例如,在单元格中键入 arcpy.analysis 并按 Tab 键,可显示 analysis 模块中可供使用的方法的列表。 显示列表后,可以通过键入相关单词对其进行进一步过滤。 从列表中选择合适的方法后,按 Enter 键即可使用该方法。

使用 Tab 补全功能访问 ArcGIS Notebook 中的选项

Python 工具、模块、函数、类和关键字都会存储可提供有关其使用信息的文档。 通过按 Shift+Tab 可以激活指针处的文档。 以下是针对缓冲区工具显示的文档:

按 Shift+Tab 访问工具的帮助。

或者,可以使用内置 Python help 功能访问同一文档。 以下是针对 arcpy.analysis.Buffer 显示的帮助文档:

可以使用 Python 帮助功能来访问工具的帮助文档。

ArcGIS Pro 集成

除了 Python 窗口之外,ArcGIS Pro 中的 ArcGIS Notebooks 将提供对地图内容的访问权限,从而允许交互式工作流,例如以下内容:

  • 可以按名称或者使用数据的路径,在笔记本中访问地图的图层和其他内容。
  • 地理处理工具的输出默认添加到活动地图。
  • 地理处理工具支持选择。
  • 支持全局地理处理环境设置,并且可以被环境设置覆盖。
  • 地理处理工作流可以在正在进行的编辑会话期间发生。 如果地理处理工具直接修改了编辑会话中正在编辑的要素(它不会将地理处理的结果另存为另一个要素类),则用户可以在编辑功能区中保存或放弃更改。
  • 从 ArcGIS Notebook 中运行地理处理工具时,工具的结果日志将显示在地理处理历史中。
警告:

ArcGIS Pro 设计为运行单个 Python 实例。 通过 ArcGIS Pro 的单个实例中的每个打开的笔记本共享此 Python 实例。 如果不同的笔记本使用相同的变量名称,则可能造成变量名称冲突。 要避免可能的变量名称冲突,请考虑以下选项:

  1. 一次打开一个笔记本。
  2. ArcGIS Pro 的不同实例中运行笔记本。
  3. 在同时运行的笔记本中使用唯一的变量名称。
  4. 运行 %reset -f magic 命令删除笔记本中的所有变量。

警告:

ArcGIS Pro 中不直接支持通过 ArcGIS Enterprise 托管的 ArcGIS Notebooks。 要在 ArcGIS Pro 中使用托管笔记本,请在本地下载并使用 .ipynb 文件。

注:
使用 %matplotlib inline magic 命令来显示图时,必须使用 matplotlib.pyplotshow() 功能绘制图。

ArcGIS Pro 中的 ArcGIS Notebooks 仅支持 Python,不支持其他语言内核(例如 R)。

ArcGIS API for Python

ArcGIS API for Python 中,GIS 对象用于表示您正在使用的 GIS,例如 ArcGIS OnlineArcGIS Enterprise 实例。 您的 GIS 可以支持多种身份验证方案,有关如何针对不同的方案对脚本和笔记本进行身份验证的信息,请参阅使用不同的身份验证方案

例如,要作为匿名用户连接到 ArcGIS Online,请指定 gis = GIS()。 在 ArcGIS Pro 中,要在不输入凭据的情况下连接到您的活动门户,请指定 gis = GIS("home")