Earth Engine 界面 API

Earth Engine 通过 ui 软件包提供对客户端界面 (UI) 窗口小件的访问权限。使用 ui 软件包为 Earth Engine 脚本构建图形界面。这些接口可以包括简单的输入 widget(例如按钮和复选框)、更复杂的 widget(例如图表和地图)、用于控制界面布局的面板,以及用于界面 widget 之间互动的事件处理脚本。在代码编辑器左侧的 Docs 标签页中,探索 ui API 的完整功能。以下示例使用 ui 软件包来演示用于创建 widget、定义用户点击 widget 时的行为以及显示 widget 的基本函数。

世界,你好!

此示例展示了控制台中显示的按钮的简单界面。点击该按钮后,系统会将“Hello, world!” 输出到控制台:

// Make a button widget.
var button = ui.Button('Click me!');

// Set a callback function to run when the
// button is clicked.
button.onClick(function() {
  print('Hello, world!');
});

// Display the button in the console.
print(button);

请注意,首先,按钮是使用单个参数(其标签)创建的。接下来,系统会调用按钮的 onClick() 函数。onClick() 的参数是另一个函数,每当用户点击按钮时,该函数都会运行。这种在事件发生时调用函数(“回调”函数)的机制称为“事件处理程序”,在界面库中被广泛使用。在此示例中,当用户点击该按钮时,该函数会向控制台输出“Hello, world!”。

可变性

请注意,与 ee.* 命名空间中的对象不同,ui.* 命名空间中的对象是可变的。因此,您无需在每次对对象调用实例函数时都将对象重新分配给变量。只需调用该函数即可更改(更改)该 widget。将以下代码附加到上一个示例会导致为按钮的点击事件注册另一个回调:

// Set another callback function on the button.
button.onClick(function() {
  print('Oh, yeah!');
});

将此代码复制到上一个示例的末尾,然后点击运行。现在,当您点击该按钮时,系统会将这两条消息都输出到控制台。

通过界面页面,您可以详细了解如何为 Earth Engine 脚本构建界面。“Widgets”页面提供了直观的导览,并介绍了 ui 软件包中微件的基本功能。“面板和布局”页面介绍了可用于整理和排列微件的顶级容器和布局。“事件”页面详细介绍了如何配置界面中微件的行为和互动。