Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Curso:
INTRODUCCION PYTHON
PARA ARCGIS
Ing. Richard Flores
¿Qué aprenderemos?
¿Qué necesito saber antes de empezar?
¿Qué no aprenderemos?
Configuración de Python en Windows
Instalación y configuración de Pythonwin
Configuración del ArcGIS Desktop con Pythonwin
Pensar como un programador GIS
Pseudocódigo
Uso de módulos: arcpy, os, sys
Buenas prácticas usando comentarios
Variables: de entorno y locales
Uso de sangría (Indentation)
Funciones usando: if // if… else // if ... elif ... else
Iteradores: while // for
Construcción de caja de herramienta con parámetros.
¿Qué necesito saber antes
de empezar este curso?
No es necesario tener experiencia programando, pero si es importante tener
claro la secuencia para realizar un análisis espacial.
herramienta
entrada de salida
geoproceso
1
seleccionar Configuración avanzada del 3
sistema 2
Seleccionar Path y clic en el botón
Clic en el Botón:
Editar
Variables de entorno
Agregar en Valor de la variable la ruta donde se ha instalado Python
Clic en Aceptar, abrir la consola del DOS, escribir python y dar enter
Descarga, instalación y
configuración de PythonWin
Dirección para descargar PythonWin:
https://sourceforge.net/projects/pywin32/files/pywin32/Build%20221/
3 Descargar
Instalación de PythonWin
Doble clic en el archivo descargado:
Clic en siguiente:
Clic en ejecutar:
Clic en siguiente:
Configuración en PythonWin: IDE PythonWin
ArcToolbox ->
Analysis Tools ->
Proximity ->
Buffer
Seleccionar de la ventana
de resultados, dar clic
derecho y seleccionar
Copy As Python Snippet
Pensar como un
programador GIS
5
incluir comentarios en todo el script
5
para la descripción de secciones
Variable Variable
de datos proyectada
Variables
de
entorno
Variables
locales
Indentation
El intérprete de Python utiliza sangría para detectar bloques de código
de las sentencias: if, for, while, try, with, def. El principio de un
enunciado compuesto se define mediante el uso de dos puntos (:)
Condicionales Iterativas
Operadores de comparación Operadores lógicos
Símbolo Significado Operador Ejemplo Explicación Resultado
def nombre_de_la_función(argumentos):
bloque_de_codigo
Práctica
Abrir el ArcMap y en el shapefile Supermercado.shp:
1. Rellenar el registro del campo “CertDC”, que tiene como UBIGEO “150103” con el texto “SI”
y colocar “NO” a los otros registros con una función escrita en Python.
Práctica
Seleccionar herramienta Llenar los campos solicitados
Práctica
Práctica
En el shapefile Supermercado.shp, por medio de un script de Python:
1. Adicionar el campo “Periodo”, tipo “double”
2. Rellenar el registro del campo “Periodo”, que tiene como UBIGEO diferente a “150103”
con el numero “2016” y colocar “2017” a los otros registros con una función escrita en
Python.
Práctica
import arcpy
arcpy.env.overwriteOutput=True
arcpy.env.workspace=r"D:\Curso Python\Capa"
Capa="SuperMercado.shp"
Campo="Periodo"
arcpy.AddField_management(Capa,Campo,"DOUBLE")
expresion = "rellenacampo(!UBIGEO!)"
bloquecodigo = """def rellenacampo(dato):
if dato=='150103':
return 2016
#print "script finalizado"
else:
return 2015"""
arcpy.CalculateField_management(Capa, Campo, expresion, "PYTHON_9.3", bloquecodigo)
Correr el script.
Parámetros
import arcpy
arcpy.env.workspace = arcpy.GetParameterAsText(0)
in_featureclass = arcpy.GetParameterAsText(1)
out_workspace = arcpy.GetParameterAsText(2)
arcpy.env.workspace = sys.argv[1]
in_featureclass = sys.argv[2]
out_workspace = sys.argv[3]
Práctica
Con el script generado
anteriormente, establecer
parámetros de entrada y salida y
que estos se ejecuten desde el
ArcMap.
CapaEntrada=arcpy.GetParameterAsText(0)
CapaSalida=arcpy.GetParameterAsText(1)
distancia=arcpy.GetParameterAsText(2)
arcpy.AddMessage("script finalizado“)
Conectar a la carpeta Curso Python Crear una nueva carpeta Nombrar: Herramienta
Integrando un script de Python en ArcMap
https://www.arcgis.com/home/item.html?id=5f3aefe77f6b4f61ad3e4c62f30bff3b
Seleccionar:
1 Desempaquetar 2 Doble click en addin_assistant.exe: 3 Ejecutar:
:
4 Crear carpeta donde se va a generar el instalador: 5 Rellenar campos y guardar:
6 Pestaña Add-In Contens, seleccionar TOOLBARS y
dar click derecho: 7 Dar un título a la barra de herramienta:
8 Click derecho en la barra de herramienta creada y 9 Rellenar campos del botón, guardar y abrir la
seleccionar New Button: carpeta:
10 Doble click en makeaddin.py: 13 Instalación satisfactoria:
12 Instalar Add-In:
14 Verificar en el ArcMap:
11 Doble click en Herramienta.esriaddin
Práctica final:
Generar una barra de herramientas, que contenga cinco botones y realice lo siguiente: