• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar al pie de página
logo web Geoinnova

Geoinnova

Consultoría y Formación en SIG y Medio Ambiente

  • Geoinnova
    • Asociación
    • Equipo
    • Visor de proyectos Geoinnova
    • Geolibrería
    • Alianzas Estratégicas
  • Consultoría
    • Consultoría y Desarrollo en Sistemas de Información Geográfica
    • Consultora Ambiental
    • Turismo sostenible
    • Planificación urbana y ordenación del territorio
    • Planes Urbanos de Actuación Municipal – PUAM
    • Geomarketing
  • Servicios
    • Planero Web
    • QElectricGIS
    • Plugins
  • Formación
    • Todos los cursos
    • Webinars
    • Máster y Diplomas
    • Cursos de ArcGIS
    • Cursos de QGIS
    • Cursos de Teledetección
    • Cursos de Medioambiente
  • Medio Ambiente
    • Consultora Ambiental
    • Estudios ambientales para proyectos de energías renovables
    • Estudios de Impacto e Integración Paisajística
    • Evaluación Ambiental Estratégica de planes y programas
    • Estudio de Impacto Ambiental para proyectos
    • Cálculo huella de carbono
    • Educación Ambiental
    • Cursos de Medioambiente
  • Coworking
  • Blog
    • SIG
    • Medio Ambiente
    • Teledetección
    • Programación y Desarrollo SIG
    • Corporativo
  • Contacto
    • Soporte de Clientes – Tickets
Programación y Desarrollo SIG SIG

Usando Python para ArcGIS: ArcPy

19/04/2021 4 comentarios

La plataforma ArcGIS, actualmente una de las aplicaciones más potentes y de uso más extendido en el mundo de los SIG, integra una serie de librerías de análisis espacial que operan sobre Python en el módulo de ArcMap denominado ArcPy.

¿Qué es ArcPy?

ArcPy es un paquete de librerías de Python para ArcGIS que proporciona una manera útil y productiva de realizar análisis de datos geográficos, conversión de datos, administración de datos y automatización de mapas.

Este paquete proporciona una rica experiencia Python nativa, que ofrece finalización de código (te permite, a través de una palabra clave, obtener una lista emergente de propiedades y métodos admitidos por esa palabra clave), así como documentación de referencia para cada función, módulo y clase.

¿Por qué utilizar Python para ArcGIS?

¿Es una locura plantearte aprender a usar Python para ArcGIS sin tener idea de programación? Anteriormente la figura del desarrollador se encontraba un poco más aislada, y sólo aquellos que habían decidido elegir ese camino dentro de su profesión -normalmente de informático-, eran los elegidos para desempeñar dichas labores en su trabajo. Digamos que las tareas de desarrollar, estaban enfocadas puramente al desarrollo de software.

Hoy en día, la actividad profesional en materia de SIG está demandando, y de forma constante y creciente, la capacitación en competencias relacionadas tanto con la automatización de procesos de análisis SIG y modelado espacial, como con la destreza en entornos de programación en ciertos lenguajes de programación, como Python.

Python es un lenguaje de programación gratuito, multiplataforma y de código abierto que es potente y fácil de aprender. Es ampliamente utilizado y compatible.

Ejemplo de uso de ArcPy: Crear áreas de influencia o buffers múltiples

Veamos un ejemplo práctico en el uso de Python para ArcGIS. En el siguiente escenario se pretende realizar múltiples análisis de área de influencia o buffers múltiples sobre monumentos de especial interés en el municipio de Palma (Palma de Mallorca) para identificar zonas con alto potencial para la ubicación de “souvenirs” o tiendas de regalos de viajes.

Los círculos verdes corresponden a monumentos de la ciudad de Palma (Palma de Mallorca).

Pues bien, utilizando la ventana de Python de ArcMap podemos utilizar el siguiente script para realizar ese proceso repetitivas veces, es decir, automatizarlo.

 import arcpy
 arcpy.env.workspace = r"E:/ARTICULOS/ARCPY/ACTUALIZAR_ARTICULOS_ANTIGUOS/INFO/"
 arcpy.env.overwriteOutput = True
 for d in (50,100,200):
     dist = str(d)+" meters"
     nombre = "MONUMENTOS_"+str(d)
     arcpy.Buffer_analysis("MONUMENTOS", nombre, dist)
  1. En la primera línea importamos las librerías de ArcPy.
  2. En la segunda configuramos el espacio de trabajo, es decir, donde quedarán guardados nuestros resultados.
  3. En la tercera configuramos que se puedan sobrescribir los resultados, ya que será un proceso repetitivo, y para no andar cambiando el nombre.
  4. En la cuarta línea vamos a utilizar un bucle de iteración de tipo “for” y vamos a indicar la distancia de las áreas de influencia (en metros)
  5. En la quinta creamos la variable “dist” para definir la distancia en metros
  6. En la sexta creamos una variable para nuestra nueva capa, a la que le incorporamos el valor de la distancia
  7. En la séptima realizamos el análisis de áreas de influencia o buffers. Este se ejecutará tantas veces como distancias separadas por comas hayamos definido en la cuarta línea

El resultado es el siguiente:

De esta manera, podemos ejecutar cuantas áreas de influencia queramos ejecutando un solo geoproceso. Además, nos permite añadir más herramientas a nuestro script de Python con el fin de automatizar todos esos procesos en uno sólo. Esto se puede hacer utilizando Model Builder o escribiendo líneas de código de Python. Esto es un ejemplo muy sencillo de lo que podemos llegar a hacer con Python en ArcGIS.

Deja de creer que hace falta se informático para aprender a programar en Python y no te pierdas la oportunidad de aprender más sobre ArcPy en el Curso Python para ArcGIS: Geoprocesos con ArcPy. Entra en este enlace y obtén más información al respecto.

«Post actualizado en Abril de 2021»

Apúntate a nuestra newsletter semanal

"*" señala los campos obligatorios

Consentimiento*
Este campo es un campo de validación y debe quedar sin cambios.

Información legal

Cumplimos el RGPD (Reglamenteo General de Protección de Datos) y esta en la primera información que debes saber. Responsable: Asociación Geoinnova. Finalidad: Apuntarte en nuestra base de datos para poder enviarte nuestra newsletter y cualquier otra información de interes. Legitimidad: Nos das tu consentimiento para comunicarnos contigo. Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir tus datos. Para una información más ampliada entra a nuestra política de privacidad.

Artículos relacionados

Terre3 - Caminado a un lugar entre el GIS y el BIM
Terre3 – Caminando a un lugar entre el GIS y el BIM
28/03/2023
OSGeo4W Shell en Windows Terminal
Integrar la consola de OSGeo4W Shell en Windows Terminal para simplificar tu flujo de trabajo
20/03/2023
superficie de sellado de suelo a partir de datos geográficos abiertos
Cómo obtener la superficie de sellado de suelo a partir de datos geográficos abiertos
07/03/2023

RemOT Technologies

RemOT Technologies es una empresa colaboradora de Geoinnova, especialista en desarrollo de aplicaciones GIS para la web, cartografía y análisis espaciales automatizados. Desarrolla visores web cartográficos, aplicaciones basadas en geolocalización y plugins y personalizaciones de QGIS para resolver problemas de distintos ámbitos, como por ejemplo la gestión de parcelas o la gestión de redes. RemOT ya ha trabajado en varios proyectos de desarrollo de la mano de Geoinnova y, además, también ha participado, entre otros proyectos como en el desarrollo del Atlas Nacional de España. Ha sido reconocida como una de las 100 mejores empresas geoespaciales del mundo en el año 2019 por Geoawesomeness, una de las 50 Startup españolas de futuro por la revista Emprendedores y posee el sello Pyme Innovadora del Ministerio de Ciencia Innovación y Universidades. En la parte dedicada a formación, Lucía Martínez, Marcos Gimeno y Miquel Febrer, imparten diversos cursos en la plataforma de Geoinnova.

Interacciones con los lectores

Comentarios

  1. Catalina dice

    22/11/2022 a las 04:29

    Hola, una consulta estoy realizando un trabajo con python en el cual necesito automatizar un análisis de erosión de las dunas. La estoy realizando con imágenes satelitales y con un DEM. ¿ Cómo podría automatizar el proceso?

    Responder
  2. Mauricio dice

    07/04/2022 a las 22:17

    Hola, una consulta ¿como lo hago si necesito que, en este mismo ejemplo, el script solo tome en cuenta los monumentos seleccionados?

    saludos

    Responder
  3. VIANNEY ANDRE KCANA SONCCO dice

    10/08/2017 a las 21:54

    GRACIAS POR LA INFORMACION. QUIERO APRENDER PYTHON. SOY DE PERU. COMO CANCELO EL PAGO.

    Responder
    • Asociación Geoinnova dice

      16/08/2017 a las 15:52

      Hola Vianney, para cualquier información sobre los cursos contacta en el mail formacion@geoinnova.org

      Un saludo.

      Responder

¿Quieres comentarnos algo? Adelante! Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Footer

Menú Legal

  • Aviso Legal
  • Política de privacidad
  • Política de cookies
  • Términos y condiciones

Otras páginas de interes

  • Promociones y descuentos en formación
  • Formación bonificada FUNDAE

Contacto

Calle Luis Morondo Urra nº 8 Bajo A
31006 Pamplona (Navarra)
info@geoinnova.org
+34 948 117 137

Horario de atención

Lunes a Viernes - 09:00 a 14:00 y de 16:00 a 19:00.
Fines de semana y Festivos - Exclusivamente por mail.
Horario de Verano (01 de julio al 30 de agosto): De lunes a viernes de 8 a 15h.

Síguenos en Redes Sociales

Apúntate a nuestra newsletter

"*" señala los campos obligatorios

Consentimiento*
Este campo es un campo de validación y debe quedar sin cambios.

Entidad adherida a Confianza Online Certificado de inscripción en el Registro de huella de carbono, compensación y proyectos de absorción Logo Plazox

© 2023 · Desarrollada por Geoinnova en colaboración con OikosMSP

Gestionar el Consentimiento de las Cookies
Utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. Lo hacemos para mejorar la experiencia de navegación y para mostrar anuncios personalizados. El consentimiento a estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos anónimos. Sin una requerimiento, el cumplimiento voluntario por parte de su proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarlo.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en un sitio web o en varios sitios web con fines de marketing similares.
Administrar opciones Gestionar los servicios Gestionar proveedores Leer más sobre estos propósitos
Preferencias
{title} {title} {title}