No conozco ArcPy, pero trabajo con shapefiles y raster en Python desde hace años
- Para procesar shapefiles en Python, hay muchos módulos como osgeo/ogr , Fiona , Pysal o Pyshp ( shpUtils es uno de ellos y no el más utilizado), y otros, véase Pypi: GIS y ejemplos en gis.stackexchange y muchos ejemplos en la web (no sólo en inglés). La mayoría de ellos son mucho más antiguos que ArcPy (o arcgisscripting)...
- para el tratamiento de las tramas se puede utilizar osgeo/gdal La norma
- Para el tratamiento de las geometrías geoespaciales, existe elegante
- Para trazar las geometrías se puede utilizar matplotlib y posiblemente descartes La "extensión" de matplotlib para áreas, pero también muchos, muchos otros módulos, ver Pypi: Trazando y módulos como mayavi para la representación en 3D (también con matplotlib)
- También hay módulos como mapnik que le dan directamente las posibilidades de 1) leer un shapefile y 4) trazar con el módulo Pycairo .
Después de eso, es como un SIG:
- se utilizan los módulos 1) para abrir, guardar los shapefiles y realizar los tratamientos con otros módulos como numpy o scipy, si se desea.
- puede utilizar shapely para la manipulación y el análisis de los objetos geométricos (buffer, etc.).
- puedes usar matplotlib para trazar las geometrías, pero matplotlib no sabe lo que quieres trazar. Es su trabajo con los módulos 1) o 3) para especificar qué trazar (atributos, etc,.) y cómo.
Si quiero visualizar una determinada columna de mi shapefile, ¿cómo puedo implementarlo en el código?
Por lo tanto, debes aprender matplotib y los otros módulos. Tienes que aprender ArcPy, es lo mismo...(hay un montón de excelentes tutoriales en la web, especialmente para matplolib, y es más fácil que ArcPy porque es puro Python).
Algunos ejemplos sólo con Python
Mapa geológico (shapefile poligonal) con colores basados en un atributo
Puntos 3D (shapefile PointZ) con color basado en un atributo
Puntos 3D (shapefile Point con z como atributo) y línea 3D (shapefile PolyLineZ) en un MDE, y en un ráster drapeado sobre la superficie del MDE.
Perfil topográfico con valores z y colores basados en los atributos (formaciones geológicas = sección transversal) del shapefile original (Polyline shapefile)
DEM (GeoTIFF) con el módulo Mayavi2
DEM (ESRI ascii grid, .asc) y Point shapefiles (con z como atributo) con el módulo vis vis
Sondeos (buffer 3D de una polilíneaZ con colores basados en un atributo (formaciones geológicas), con una superficie cuadriculada calculada con los módulos numpy y matplotlib a partir de un shapefile de puntos (con z como atributo), visualizado con el módulo vis vis