Una publicación anterior<\/A> compartió cinco fragmentos de código Python para automatizar tareas de mapeo en ArcMap. Esta publicación te guía sobre cómo realizar esas mismas tareas usando la ventana de Python de ArcGIS Pro<\/A>.<\/P>En ArcGIS Pro, el módulo de mapeo se llama arcpy.mp<\/A>. Para probar los fragmentos a continuación por ti mismo, haz una copia de un archivo de proyecto de ArcGIS Pro (APRX) y muévelo a algún lugar para propósitos de prueba. No necesitas ser un experto en scripting Python—simplemente ingresa el código a continuación en la ventana de Python y observa los resultados. <\/P>Pronto verás cómo algunos trucos en Python pueden acelerar la gestión de mapas.<\/P>Cada fragmento a continuación funciona con ArcGIS Pro 1.x, un archivo de proyecto existente, el módulo arcpy.mp y Python 3.x.<\/LI><\/UL>Fragmento 1: Verificar Consultas de Definición de Capa<\/STRONG><\/SPAN><\/P><\/P>Supongamos que necesitas verificar si alguna de las capas en tu proyecto de ArcGIS Pro tiene aplicada una consulta de definición, y si es así, ver las consultas de definición. Abrir el cuadro de diálogo Propiedades de Capa para cada capa en cada mapa es tedioso.<\/SPAN><\/P><\/P>Solución: Abre la ventana de Python en su lugar y ejecuta el código a continuación. El nombre y la consulta de definición de todas las capas serán "impresos" (es decir, mostrados en la ventana de Python).<\/SPAN><\/P><\/P>Desglose del Código<\/STRONG><\/SPAN><\/P>La primera línea del código crea una variable llamada aprx<\/STRONG><\/SPAN> que referencia el proyecto abierto usando la función ArcGISProject<\/A> con la palabra clave CURRENT.<\/SPAN><\/LI>La siguiente línea crea una variable llamada maps <\/STRONG><\/SPAN>usando el método listMaps que devuelve una lista Python de objetos Map en el proyecto.<\/SPAN><\/LI>Se usa un bucle for <\/STRONG><\/SPAN> para iterar a través de cada mapa.<\/SPAN><\/LI>Para cada mapa, se usa el método listLayers para crear una lista de las capas.<\/SPAN><\/LI>Otro bucle for <\/STRONG><\/SPAN> se usa para iterar a través de la lista de capas.<\/SPAN><\/LI>La clase Layer<\/A> tiene muchas propiedades accesibles, incluyendo el nombre y la consulta de definición de una capa. Debido a que no todos los tipos de capa soportan todas las propiedades, se usa el método supports para probar qué propiedades soporta una capa.<\/SPAN><\/LI>La última línea del código imprime (muestra) el nombre de cada mapa, el nombre de cada capa y la consulta de definición de cada capa.<\/SPAN><\/LI><\/>\nP style=\"font-size: 16px; margin-bottom: 24px;\">Fragmento 2: Reparar Enlaces Rotos<\/><\strong>
En ArcGIS Pro, el módulo de mapeo se llama
Pronto verás cómo algunos trucos en Python pueden acelerar la gestión de mapas.<\/P>
Fragmento 1: Verificar Consultas de Definición de Capa<\/STRONG><\/SPAN><\/P><\/P>Supongamos que necesitas verificar si alguna de las capas en tu proyecto de ArcGIS Pro tiene aplicada una consulta de definición, y si es así, ver las consultas de definición. Abrir el cuadro de diálogo Propiedades de Capa para cada capa en cada mapa es tedioso.<\/SPAN><\/P><\/P>Solución: Abre la ventana de Python en su lugar y ejecuta el código a continuación. El nombre y la consulta de definición de todas las capas serán "impresos" (es decir, mostrados en la ventana de Python).<\/SPAN><\/P><\/P>Desglose del Código<\/STRONG><\/SPAN><\/P>La primera línea del código crea una variable llamada aprx<\/STRONG><\/SPAN> que referencia el proyecto abierto usando la
En algún momento, probablemente has movido datos del mapa desde un espacio de trabajo a otro. ¿Alguna vez has visto las temidas marcas rojas de exclamación?<\/><\p><\/>Si la ruta a las capas del mapa ha cambiado, con solo unas pocas líneas puedes encontrar rápidamente la ruta antigua del espacio de trabajo y reemplazarla con la nueva ruta para todas las capas y tablas en tu proyecto al mismo tiempo. Ejecuta las siguientes líneas en la ventana Python (asegúrate actualizar las rutas para reflejar tus espacios antiguos y nuevos).<\/><\/>Desglose del Código<\/>
Fragmento 3 : Identificar Capas con Fuente Datos Rota
Hablando sobre esas marcas rojas, también puedes usar arcpy.mp para imprimir las capas que tienen enlaces rotos usando el código abajo .
Desglose del Código
Fragmento 4 : Inventariar Fuentes Datos Capas
Si necesitas saber la fuente datos para todas las capas en tu proyecto pero no quieres abrir el cuadro Propiedades Capa para cada una, simplemente ejecuta las líneas abajo en la ventana Python para imprimir los nombres y fuentes datos.
Esta publicación fue contribuida por la instructora de Esri Brittney White. Con base en Washington, D.C., la pasión de Brittney es ayudar a los clientes a aprender y aplicar la tecnología Esri en su propio trabajo.<\/SPAN><\/P><\/BODY><\/HTML>
I also would like to complement with this:
How to return the data source of a layer
import arcpy aprx = arcpy.mp.ArcGISProject('CURRENT') lyr = maps.listLayers()[0] print("The layer's data source of: " + lyr.name + " is " + lyr.dataSource)
Nicely done. I am looking for an iterator to turn on each data layer in an ArcPro document (that is based off of a complex view in SQL Server, export to PNG, and then go to the next layer and do the same thing.
Los miembros registrados pueden publicar, seguir actualizaciones y más. ¿Nuevo aquí? Regístrate para una cuenta gratuita.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.