Los notebooks de ArcGIS ejecutan un entorno de notebook Jupyter, que proporciona un espacio de trabajo optimizado basado en celdas. En este tema se explican los comandos y aspectos básicos sobre el trabajo en los notebooks de ArcGIS, incluidos los accesos directos y las prácticas recomendadas.
Especificar un tipo de celda
Hay tres tipos de celdas que se pueden utilizar en un notebook de ArcGIS. Una vez seleccionada una celda en concreto con su puntero, puede cambiar el tipo de celda con la lista desplegable de la barra de herramientas.
Los tres tipos disponibles son:
- Código: el notebook interpretará todo el contenido de una celda de código con el lenguaje Python. Al usar el código Python, al escribir ciertas cadenas, como from o el signo igual =, el notebook les cambiará automáticamente el color o las resaltará para mayor claridad. Todas las líneas de código que empiecen por un signo de almohadilla # se interpretarán como comentarios, se pondrán en verde y en cursiva y no se ejecutarán como código en el notebook.
- Markdown: el notebook interpretará todo el contenido de una celda Markdown con el lenguaje Markdown. Es un lenguaje sencillo para formatear texto enriquecido que utilizan en Internet clientes como GitHub. Consulte la Guía de Markdown en línea acerca del uso de Markdown. La ejecución de una celda Markdown convertirá su contenido en texto enriquecido. Cualquier línea que comience con una o varias almohadillas # se formateará como encabezado. También puede agregar código HTML sin formato a las celdas Markdown.
- NBConvert sin formato: el notebook no procesará contenido de una celda NBConvert sin formato. Este tipo de celda se utiliza con poca frecuencia.
Nota:
El tipo de celda Encabezado también está disponible en la lista desplegable. No obstante, este tipo de celda ya no se utiliza en entornos de notebook Jupyter. Al hacer clic en este tipo de celda, la celda se convierte a Markdown e incorpora una almohadilla #, que indica un encabezado de nivel superior en Markdown.
El uso de texto enriquecido y comentarios de código hará que sus notebooks sean más legibles y valiosos para los usuarios con los que los comparte.
Trabajar con celdas
Para que un notebook ejecute el código, éste debe estar incluido en una celda. El código de las celdas le permite definir variables y ejecutar funciones incluidas en las bibliotecas de Python.
Para definir una variable, ejecute una celda que incluya una instrucción de variable, incluyendo un signo igual =. La plantilla de notebook predeterminada, por ejemplo, se inicia al definir una variable gis. Si ejecuta una celda que contiene solo el nombre de esa variable, gis, el notebook devolverá como salida la dirección URL de su portal de ArcGIS Enterprise.
Para ejecutar una función de Python, proporcione la sintaxis de la función y cualquier otro argumento necesario o aceptado por la función. Consulte la sección Usar funciones en una celda a continuación para obtener más información.
Puede crear una nueva celda pulsando Mayús+Intro o haciendo clic en Insertar en la cinta de menú, que le permite insertar una nueva celda encima o debajo de la celda actual.
Importar bibliotecas y módulos
En la plantilla de notebook predeterminada, los notebooks de ArcGIS solo importan el módulo gis de ArcGIS API for Python. Normalmente querrá usar otras bibliotecas de Python disponibles en el tiempo de ejecución de su notebook. Para acceder a estas bibliotecas, ejecute un comando import.
Consultar todas las bibliotecas de Python disponibles en los notebooks de ArcGIS
Cree una nueva celda y escriba import <library>, a continuación, ejecute la celda.
En ArcGIS API for Python y ArcPy, así como en otros casos, las bibliotecas de Python se organizan en módulos. Para acceder a las bibliotecas dentro de un módulo, declare el módulo para que tenga acceso con una instrucción from y, a continuación, declare una biblioteca mediante una instrucción import. Por ejemplo, para llamar a la biblioteca WebScene desde el módulo mapping en ArcGIS API for Python, debería ejecutar el siguiente comando en una celda:
from arcgis.mapping import WebScene
Los notebooks de ArcGIS incluyen la función autocompletar al ejecutar las celdas, que puede utilizar para buscar las bibliotecas y los módulos que necesita. En una celda, escriba la primera parte del comando y, luego, pulse la tecla Tab para activar la función autocompletar. Proporcionará los posibles valores con los que se puede completar el comando.
Por ejemplo, si escribe arcgis. y luego pulsa Tab, el notebook proporcionará en una lista desplegable todos los módulos disponibles en ArcGIS API for Python. Puede utilizar las flechas hacia arriba y hacia abajo para desplazarse por la lista y, cuando encuentre la opción que desee, pulsar Intro para introducirla en su línea de código.
Para obtener más información sobre cómo funcionan ArcGIS API for Python y ArcPy en sus notebooks, consulte los temas siguientes:
Usar funciones en una celda
Para realizar análisis y trabajar con datos en los notebooks, utilice las funciones de Python. Las funciones están incluidas en las bibliotecas de Python y, frecuentemente, toman argumentos de entrada para especificar la forma en la que se ejecutarán y sobre qué contenido se ejecutarán.
La herramienta autocompletar del notebook puede ayudarle a encontrar funciones mediante una lista desplegable con todo lo disponible. En cualquier biblioteca bar, escriba bar. y pulse Tab para mostrar sus funciones disponibles.
Por ejemplo, para ver las herramientas disponibles en la biblioteca Resumir datos del módulo arcgis.features, introduzca el siguiente código y, luego, pulse Tab:
features.summarize_data.
La herramienta autocompletar mostrará una lista desplegable con las herramientas disponibles en la biblioteca.
Frecuentemente, un comando de un notebook tendrá argumentos obligatorios u opcionales: parámetros que proporcionan información para ejecutar un comando. Si la sintaxis de un comando termina con un par paréntesis vacío (), el comando necesita o puede incluir argumentos opcionales que debe agregar usted.
Introduzca los argumentos dentro de los paréntesis, separando los argumentos con comas. Para ver la cadena de argumentos obligatorios y opcionales de cualquier función, sustituya los paréntesis vacíos con un signo de interrogación y ejecute la celda. Esto mostrará la docstring de la función, que proporciona una lista de todos los argumentos.
Por ejemplo, todas las herramientas disponibles a través del panel Análisis del editor de notebooks necesitan argumentos. Al agregar una herramienta de este panel a una celda, se insertará la sintaxis de ArcGIS API for Python de la herramienta, que termina en paréntesis vacíos. Si intenta ejecutar esta sintaxis en una celda sin proporcionar como mínimo un argumento, la celda fallará y mostrará un mensaje de error.
Si desea ejecutar la herramienta Consolidar puntos en la biblioteca Resumir datos, debería encontrar la herramienta en el panel Análisis y agregarla a una nueva celda, o simplemente escribir en la herramienta la sintaxis como sigue:
features.summarize_data.aggregate_points()
Para ver la lista de argumentos de la herramienta, modifique la sintaxis como sigue y ejecute la celda:
features.summarize_data.aggregate_points?
Esto abrirá la ventana de referencia de docstring para la herramienta. Esta referencia tiene botones en la esquina superior derecha para expandir o cerrar la ventana.
Cuando esté trabajando en una celda, tenga en cuenta lo siguiente:
- Para cualquier función de foo(), escriba foo? y pulse Intro para mostrar la docstring de la función, que describe la función.
- Si inicia una celda con !, el contenido de esta se ejecuta como un comando bash en el contenedor de su notebook.
Ejecutar una celda
Cuando ejecuta una celda, se ejecuta su código y se llevan a cabo todas las operaciones que contiene. Solo puede ejecutar una celda completa, no una subsección de la misma ni una línea de código concreta. Las celdas pueden consistir en una o en varias líneas de código.
Para ejecutar una celda seleccionada, haga clic en el botón Ejecutar de la barra de herramientas, o bien haga clic en Celdas > Ejecutar celdas También puede pulsar Ctrl+Intro para ejecutar la celda en la que se encuentra el puntero del ratón.
Para detener manualmente una celda en ejecución, haga clic en Kernel > Interrumpir. También puede hacer clic en el botón cuadrado de parada de la barra de herramientas.
A la izquierda de cada celda de código hay un elemento In [ ]. Si la celda no se ha ejecutado todavía, o si una celda ejecutada anteriormente se ha borrado de su salida, los corchetes estarán vacíos. Cuando la celda esté ejecutándose contendrá un asterisco: In [*]. Cuando una celda haya terminado de ejecutarse, en su corchete In [ ] habrá un número que indica el orden de las celdas que se han ejecutado. Dado que las celdas de un notebook se pueden ejecutar en cualquier orden y varias veces, los números de In [ ] de las celdas de un notebook pueden no estar en orden secuencial.
Nota:
Las celdas Markdown conservan un elemento de In [ ] hasta que se ejecutan, momento en el que desaparece el elemento y el contenido de la celda se convierte en texto enriquecido.
Cuando una línea de código de una celda que ejecute produce una salida, esta se muestra en su notebook debajo de la celda ejecutada. Junto a la salida hay un elemento Out [ ] que coincide con el elemento In [ ] de la celda correspondiente.
Trabajar con el kernel
Cuando inicia un nuevo notebook de ArcGIS, se inicia un kernel. Este kernel ejecuta el código que usted ejecuta en el notebook. A medida que ejecuta celdas en el notebook (rellenando sus elementos In [ ]), las variables que haya definido en las celdas ejecutadas se guardan en la memoria del kernel.
Para reiniciar el kernel de su notebook y borrar las variables de la memoria, haga clic en Kernel > Reiniciar. Si desea reiniciar el kernel, borre las variables de la memoria, ejecute secuencialmente todas las celdas del notebook y haga clic en Kernel > Reiniciar y ejecutar todas.
Cuando termine de utilizar un notebook, haga clic en Kernel > Cerrar para cerrar el kernel del notebook y borrar todas las variables de la memoria. El kernel dejará de ejecutarse, pero no borrará las salidas de las celdas que se hayan ejecutado.
Si un notebook está inactivo durante un periodo de tiempo prolongado, el kernel se cerrará y borrará automáticamente todos los valores de la memoria. De forma predeterminada, este periodo es de 24 horas, pero el administrador del sitio puede configurarlo para que sea más corto o más largo.