API de la interfaz de usuario de Earth Engine

Earth Engine proporciona acceso a widgets de interfaz de usuario (IU) del cliente a través del paquete ui. Usa el paquete ui para crear interfaces gráficas para tus secuencias de comandos de Earth Engine. Estas interfaces pueden incluir widgets de entrada simples, como botones y casillas de verificación, widgets más complejos, como gráficos y mapas, paneles para controlar el diseño de la IU y controladores de eventos para interacciones entre widgets de la IU. Explora la funcionalidad completa de la API de ui en la pestaña Docs del lado izquierdo del editor de código. En el siguiente ejemplo, se usa el paquete ui para ilustrar las funciones básicas para crear un widget, definir el comportamiento para cuando el usuario hace clic en el widget y mostrarlo.

Hello, world!

En este ejemplo, se representa una IU simple de un botón que se muestra en la consola. Si haces clic en el botón, se imprimirá "¡Hola, mundo!" en la consola:

Editor de código (JavaScript)

// 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);

Observa que, en primer lugar, el botón se crea con un solo argumento: su etiqueta. A continuación, se llama a la función onClick() del botón. El argumento de onClick() es otra función que se ejecutará cada vez que se haga clic en el botón. Este mecanismo de una función a la que se debe llamar (una función de "devolución de llamada") cuando ocurre un evento se denomina "controlador de eventos" y se usa ampliamente en la biblioteca de la IU. En este ejemplo, cuando se hace clic en el botón, la función imprime “Hello, world!” en la consola.

Mutabilidad

Ten en cuenta que, a diferencia de los objetos del espacio de nombres ee.*, los objetos del espacio de nombres ui.* son mutables. Por lo tanto, no necesitas volver a asignar el objeto a una variable cada vez que llames a una función de instancia en el objeto. Simplemente, llamar a la función hará que el widget mute (cambie). Si agregas el siguiente código al ejemplo anterior, se registrará otra devolución de llamada para el evento de clic del botón:

Editor de código (JavaScript)

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

Copia este código al final del ejemplo anterior y haz clic en Ejecutar. Ahora, cuando hagas clic en el botón, ambos mensajes se imprimirán en la consola.

Usa las páginas de la IU para obtener más información sobre la compilación de IUs para tus secuencias de comandos de Earth Engine. La página Widgets proporciona una visita visual y describe la funcionalidad básica de los widgets del paquete ui. En la página Paneles y diseños, se describen los contenedores y diseños de nivel superior que puedes usar para organizar y ordenar los widgets. En la página Eventos, encontrarás detalles para configurar el comportamiento y la interacción de los widgets en tu IU.