SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Python GIS/Mapping

     09/06/2011
     Oficinas O2C
        Madrid
    Python-Madrid
Disclaimer
No me hago responsable de los datos erróneos contenidos en
esta presentación. Soy eterno aprendiz en muchas de estas
cosas.
Si ves que puedes aportar alguna mejora, deja un comentario
más abajo para así poder mejorar el documento. Gracias.
Proyecciones y sistemas de
               coordenadas
• La tierra no es plana, es tridimensional. La pantalla
  de tu PC es plana, los planos son planos,…
Existe la necesidad de representar información
  tridimensional en un plano ---> Distorsión

Para resolver esto se usan proyecciones
Pero es imposible mantener distancias, áreas, formas y
  direcciones todo a la vez. Por tanto, dependiendo de nuestro
  problema una proyección será más apropiada que otra.
Proyecciones y sistemas de
      coordenadas
Proyecciones y sistemas de
               coordenadas
• Proyecciones
  – Las más extendidas son:
      • Azimutal (ejemplos son la Ortográfica,
        Estereográfica, Gnomonic, Azimutal
        ‘Equal Distant’ y Lambert Azimutal
        ‘Equal Area’)
Proyecciones y sistemas de
               coordenadas
• Proyecciones
  – Las más extendidas son:
      • Azimutal (ejemplos son la Ortográfica,
        Estereográfica, Gnomonic, Azimutal
        ‘Equal Distant’ y Lambert Azimutal ‘Equal
        Area’)
      • Cónica (ejemplos son la Albers Equal
        Area, Lambert Conformal, Cónica
        Equidistante y la Cónica Policónica)
Proyecciones y sistemas de
               coordenadas
• Proyecciones
  – Las más extendidas son:
      • Azimutal (ejemplos son la Ortográfica,
        Estereográfica, Gnomonic, Azimutal
        ‘Equal Distant’ y Lambert Azimutal ‘Equal
        Area’)
      • Cónica (ejemplos son la Albers Equal
        Area, Lambert Conformal, Cónica
        Equidistante y la Cónica Policónica)
      • Cilíndrica (ejemplos son la Mercator,
        Transversal de Mercator, Oblicua de
        Mercator, Cilindrica de Miller



         (*) resumen interesante sobre proyecciones en:
  http://erg.usgs.gov/isb/pubs/MapProjections/projections.pdf
Proyecciones y sistemas de
               coordenadas
• Datum y esferoide
  – Un datum es un modelo para representar las coordenadas de un punto
    sobre la tierra (ejemplos son el NAD27, NAD83, WGS84, ED50,…)
Proyecciones
      • PyProj (wrapper para PROJ.4)
      http://code.google.com/p/pyproj/
      Sirve para hacer transformaciones de coordenadas
import pyproj
UTM_X = 565718.523517
UTM_Y = 3980998.9244
srcProj = pyproj.Proj(proj="utm", zone="11",
ellps="clrk66", units="m")
dstProj = pyproj.Proj(proj='longlat', ellps='WGS84',
 datum='WGS84')
long,lat = pyproj.transform(srcProj, dstProj, UTM_X, UTM_Y)
print "UTM zone 17 coordinate (%0.4f, %0.4f) = %0.4f, %0.4f" %
(UTM_X, UTM_Y, lat, long)
IO ficheros Raster y vectoriales
• OGR y sus python bindings: sirve para trabajar
  (leer y escribir) con ficheros con información
  vectorial http://www.gdal.org/ogr/index.html
• GDAL y sus python bindings: sirve para
  trabajar (leer y escribir) con ficheros con
  información raster (http://www.gdal.org/)
• http://pypi.python.org/pypi/GDAL/1.7.1 (OGR
  viene con GDAL)
Vectoriales
   • Shapefile : Tres ficheros
        – shp – contiene las características espaciales,
        – dbf – contiene los atributos,
        – shx – índice que permite acceso aleatorio a las
          características del shp)
        – Puede haber otros ficheros (sbx, sbn, qix, prj)
import osgeo.ogr
shapefile = osgeo.ogr.Open(“Fichero.shp")
layer = shapefile.GetLayer(0)
feature = layer.GetFeature(0)
attributes = feature.items()



                                http://openlayers.org/dev/examples/draw-feature.html
Vectoriales
• Shapely (wrapper a GEOS)
  -Sirve para trabajar con
  geometrías 2D

http://trac.gispython.org/lab/wiki/Shapely
Raster
• http://trac.osgeo.org/geotiff/ (puede llevar
  asociado un fichero *.tfw)
• JPG (lleva asociado un fichero *.jgw)
• PNG (lleva asociado un fichero *.pgw)

Los ficheros asociados se les conoce como ‘world file’ y llevan
  info de las unidades del mapa por pixel y la posición de la
  esquina superior izquierda (sistema de coordenadas,
  proyección,…). http://en.wikipedia.org/wiki/World_file
Visualización
• Matplotlib u otros (http://python.majibu.org/preguntas/713/que-
  me-aconsejais-para-realizar-graficos-desde-tablas?page=1#721)

• Mapnik (C++/python)
http://mapnik.org/faq/
BBDD ‘espaciales’
• Para qué son útiles…
  – E.g., ‘dame todos los bares que están en un radio
    de 10km de mi casa y que sirvan tapa y las
    cervezas sean baratas’.
  – Y para cosas ¿más serias?
  Es decir, están especialmente preparadas para cosas
    relacionadas con peticiones espaciales,
    transformaciones de coordenadas ‘al vuelo’,…
BBDD ‘espaciales’
• MySQL (tiene capacidades espaciales de serie)
• PostGIS (es una extensión a PostgreSQL)
http://postgis.refractions.net/
• SpatiaLite (es una extensión a SQLite)
http://gaia-gis.it/spatialite/
• Oracle Spatial (extensiónde Oracle)
• MS SQL Server
Web Frameworks / Web Services
• A grandes rasgos lo que se pretende es una
  aplicación web haciendo algo como esto:
Mash-Up Geoespacial
• Un ‘Mash-Up’ es una aplicación que combina
  datos y funcionalidades provenientes de
  varias fuentes.
Muy popular es usar googlemaps pero no es la
  única que se puede usar. Hay alternativas
  FOSS como openlayers (javascript), mapnik
  (python/C++), MapServer
Web Frameworks / Web Services
• WMS (Web Map Services)
• WFS (Web Feature Services)
• TMS (Tile Map Service)

  – http://tilecache.org/
  – http://wiki.openstreetmap.org/wiki/Mod_tile
  – https://bitbucket.org/springmeyer/tilelite/wiki/Ho
    me
Web Frameworks / Web Services
• Librerias UI
  – OpenLayers
  http://openlayers.org/

  - Mapiator
  http://pdietrich.github.com/mapiator/
Web Frameworks / Web Services
• Django + GeoDjango
https://www.djangoproject.com/
http://geodjango.org/
• Pylons (Pyramid) + MapFish
http://pylonsproject.org/
http://mapfish.org/
• TurboGears + tgext.geo
http://turbogears.org/
http://turbogears.org/2.1/docs/main/Extensions/Geo/index.html
Referencias
•   http://gispython.org/
•   http://www.gis.usu.edu/~chrisg/python/2009/
•   http://www.slideshare.net/kikocorreoso/python-gis-mapping (Recursión)
•   https://www.packtpub.com/python-geospatial-development/book
Agradecimientos
• Gracias a O2C por ceder sus oficinas para
  estas charlas de:
                 Python-Madrid

Weitere ähnliche Inhalte

Ähnlich wie Python gis mapping

Sistemas Informacion Geografica Con Software Libre
Sistemas Informacion Geografica Con Software LibreSistemas Informacion Geografica Con Software Libre
Sistemas Informacion Geografica Con Software Libre
Eduin Yezid Carrillo Vega
 
Pablo rebufello sistemas de información geográfica
Pablo rebufello sistemas de información geográficaPablo rebufello sistemas de información geográfica
Pablo rebufello sistemas de información geográfica
pablocapra
 

Ähnlich wie Python gis mapping (20)

Contenidos de la_plataforma-webinar-20junio-17
Contenidos de la_plataforma-webinar-20junio-17Contenidos de la_plataforma-webinar-20junio-17
Contenidos de la_plataforma-webinar-20junio-17
 
Sistemas de Información Geográfica
Sistemas de Información GeográficaSistemas de Información Geográfica
Sistemas de Información Geográfica
 
Los sistemas de información geográfica (SIG) y estándares de normalización
Los sistemas de información geográfica (SIG) y estándares de normalizaciónLos sistemas de información geográfica (SIG) y estándares de normalización
Los sistemas de información geográfica (SIG) y estándares de normalización
 
Sistemas Informacion Geografica Con Software Libre
Sistemas Informacion Geografica Con Software LibreSistemas Informacion Geografica Con Software Libre
Sistemas Informacion Geografica Con Software Libre
 
Pablo rebufello sistemas de información geográfica
Pablo rebufello sistemas de información geográficaPablo rebufello sistemas de información geográfica
Pablo rebufello sistemas de información geográfica
 
6. Exportación de datos para uso geotécnico.pdf
6. Exportación de datos para uso geotécnico.pdf6. Exportación de datos para uso geotécnico.pdf
6. Exportación de datos para uso geotécnico.pdf
 
01 sig introducci_n
01 sig introducci_n01 sig introducci_n
01 sig introducci_n
 
eSeminar Esri España: Estándares e Interoperabilidad, no solo INSPIRE
eSeminar Esri España: Estándares e Interoperabilidad, no solo INSPIREeSeminar Esri España: Estándares e Interoperabilidad, no solo INSPIRE
eSeminar Esri España: Estándares e Interoperabilidad, no solo INSPIRE
 
Base de datos espacial
Base de datos espacialBase de datos espacial
Base de datos espacial
 
Base de datos espacial
Base de datos espacialBase de datos espacial
Base de datos espacial
 
Tipos de archivos para datos geográficos
Tipos de archivos para datos geográficosTipos de archivos para datos geográficos
Tipos de archivos para datos geográficos
 
Introducción SIG [Máster Smart Cities UdG]
Introducción SIG [Máster Smart Cities UdG]Introducción SIG [Máster Smart Cities UdG]
Introducción SIG [Máster Smart Cities UdG]
 
Geomatica
GeomaticaGeomatica
Geomatica
 
Impacto del GIS Libre y los Estándares Abiertos en el Estado y la Academia - ...
Impacto del GIS Libre y los Estándares Abiertos en el Estado y la Academia - ...Impacto del GIS Libre y los Estándares Abiertos en el Estado y la Academia - ...
Impacto del GIS Libre y los Estándares Abiertos en el Estado y la Academia - ...
 
Software RecMin.pptx
Software RecMin.pptxSoftware RecMin.pptx
Software RecMin.pptx
 
UnidadIII.SIG
UnidadIII.SIGUnidadIII.SIG
UnidadIII.SIG
 
Unidad iii fotointerpretación
Unidad iii fotointerpretaciónUnidad iii fotointerpretación
Unidad iii fotointerpretación
 
Esri Open Platform
Esri Open PlatformEsri Open Platform
Esri Open Platform
 
Sig
SigSig
Sig
 
Sistemas de Información Geográfica Libres - Flisol 2016
Sistemas de Información Geográfica Libres - Flisol 2016Sistemas de Información Geográfica Libres - Flisol 2016
Sistemas de Información Geográfica Libres - Flisol 2016
 

Kürzlich hochgeladen

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Kürzlich hochgeladen (11)

Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 

Python gis mapping

  • 1. Python GIS/Mapping 09/06/2011 Oficinas O2C Madrid Python-Madrid
  • 2. Disclaimer No me hago responsable de los datos erróneos contenidos en esta presentación. Soy eterno aprendiz en muchas de estas cosas. Si ves que puedes aportar alguna mejora, deja un comentario más abajo para así poder mejorar el documento. Gracias.
  • 3. Proyecciones y sistemas de coordenadas • La tierra no es plana, es tridimensional. La pantalla de tu PC es plana, los planos son planos,… Existe la necesidad de representar información tridimensional en un plano ---> Distorsión Para resolver esto se usan proyecciones Pero es imposible mantener distancias, áreas, formas y direcciones todo a la vez. Por tanto, dependiendo de nuestro problema una proyección será más apropiada que otra.
  • 4. Proyecciones y sistemas de coordenadas
  • 5. Proyecciones y sistemas de coordenadas • Proyecciones – Las más extendidas son: • Azimutal (ejemplos son la Ortográfica, Estereográfica, Gnomonic, Azimutal ‘Equal Distant’ y Lambert Azimutal ‘Equal Area’)
  • 6. Proyecciones y sistemas de coordenadas • Proyecciones – Las más extendidas son: • Azimutal (ejemplos son la Ortográfica, Estereográfica, Gnomonic, Azimutal ‘Equal Distant’ y Lambert Azimutal ‘Equal Area’) • Cónica (ejemplos son la Albers Equal Area, Lambert Conformal, Cónica Equidistante y la Cónica Policónica)
  • 7. Proyecciones y sistemas de coordenadas • Proyecciones – Las más extendidas son: • Azimutal (ejemplos son la Ortográfica, Estereográfica, Gnomonic, Azimutal ‘Equal Distant’ y Lambert Azimutal ‘Equal Area’) • Cónica (ejemplos son la Albers Equal Area, Lambert Conformal, Cónica Equidistante y la Cónica Policónica) • Cilíndrica (ejemplos son la Mercator, Transversal de Mercator, Oblicua de Mercator, Cilindrica de Miller (*) resumen interesante sobre proyecciones en: http://erg.usgs.gov/isb/pubs/MapProjections/projections.pdf
  • 8. Proyecciones y sistemas de coordenadas • Datum y esferoide – Un datum es un modelo para representar las coordenadas de un punto sobre la tierra (ejemplos son el NAD27, NAD83, WGS84, ED50,…)
  • 9. Proyecciones • PyProj (wrapper para PROJ.4) http://code.google.com/p/pyproj/ Sirve para hacer transformaciones de coordenadas import pyproj UTM_X = 565718.523517 UTM_Y = 3980998.9244 srcProj = pyproj.Proj(proj="utm", zone="11", ellps="clrk66", units="m") dstProj = pyproj.Proj(proj='longlat', ellps='WGS84', datum='WGS84') long,lat = pyproj.transform(srcProj, dstProj, UTM_X, UTM_Y) print "UTM zone 17 coordinate (%0.4f, %0.4f) = %0.4f, %0.4f" % (UTM_X, UTM_Y, lat, long)
  • 10. IO ficheros Raster y vectoriales • OGR y sus python bindings: sirve para trabajar (leer y escribir) con ficheros con información vectorial http://www.gdal.org/ogr/index.html • GDAL y sus python bindings: sirve para trabajar (leer y escribir) con ficheros con información raster (http://www.gdal.org/) • http://pypi.python.org/pypi/GDAL/1.7.1 (OGR viene con GDAL)
  • 11. Vectoriales • Shapefile : Tres ficheros – shp – contiene las características espaciales, – dbf – contiene los atributos, – shx – índice que permite acceso aleatorio a las características del shp) – Puede haber otros ficheros (sbx, sbn, qix, prj) import osgeo.ogr shapefile = osgeo.ogr.Open(“Fichero.shp") layer = shapefile.GetLayer(0) feature = layer.GetFeature(0) attributes = feature.items() http://openlayers.org/dev/examples/draw-feature.html
  • 12. Vectoriales • Shapely (wrapper a GEOS) -Sirve para trabajar con geometrías 2D http://trac.gispython.org/lab/wiki/Shapely
  • 13. Raster • http://trac.osgeo.org/geotiff/ (puede llevar asociado un fichero *.tfw) • JPG (lleva asociado un fichero *.jgw) • PNG (lleva asociado un fichero *.pgw) Los ficheros asociados se les conoce como ‘world file’ y llevan info de las unidades del mapa por pixel y la posición de la esquina superior izquierda (sistema de coordenadas, proyección,…). http://en.wikipedia.org/wiki/World_file
  • 14. Visualización • Matplotlib u otros (http://python.majibu.org/preguntas/713/que- me-aconsejais-para-realizar-graficos-desde-tablas?page=1#721) • Mapnik (C++/python) http://mapnik.org/faq/
  • 15. BBDD ‘espaciales’ • Para qué son útiles… – E.g., ‘dame todos los bares que están en un radio de 10km de mi casa y que sirvan tapa y las cervezas sean baratas’. – Y para cosas ¿más serias? Es decir, están especialmente preparadas para cosas relacionadas con peticiones espaciales, transformaciones de coordenadas ‘al vuelo’,…
  • 16. BBDD ‘espaciales’ • MySQL (tiene capacidades espaciales de serie) • PostGIS (es una extensión a PostgreSQL) http://postgis.refractions.net/ • SpatiaLite (es una extensión a SQLite) http://gaia-gis.it/spatialite/ • Oracle Spatial (extensiónde Oracle) • MS SQL Server
  • 17. Web Frameworks / Web Services • A grandes rasgos lo que se pretende es una aplicación web haciendo algo como esto:
  • 18. Mash-Up Geoespacial • Un ‘Mash-Up’ es una aplicación que combina datos y funcionalidades provenientes de varias fuentes. Muy popular es usar googlemaps pero no es la única que se puede usar. Hay alternativas FOSS como openlayers (javascript), mapnik (python/C++), MapServer
  • 19. Web Frameworks / Web Services • WMS (Web Map Services) • WFS (Web Feature Services) • TMS (Tile Map Service) – http://tilecache.org/ – http://wiki.openstreetmap.org/wiki/Mod_tile – https://bitbucket.org/springmeyer/tilelite/wiki/Ho me
  • 20. Web Frameworks / Web Services • Librerias UI – OpenLayers http://openlayers.org/ - Mapiator http://pdietrich.github.com/mapiator/
  • 21. Web Frameworks / Web Services • Django + GeoDjango https://www.djangoproject.com/ http://geodjango.org/ • Pylons (Pyramid) + MapFish http://pylonsproject.org/ http://mapfish.org/ • TurboGears + tgext.geo http://turbogears.org/ http://turbogears.org/2.1/docs/main/Extensions/Geo/index.html
  • 22. Referencias • http://gispython.org/ • http://www.gis.usu.edu/~chrisg/python/2009/ • http://www.slideshare.net/kikocorreoso/python-gis-mapping (Recursión) • https://www.packtpub.com/python-geospatial-development/book
  • 23. Agradecimientos • Gracias a O2C por ceder sus oficinas para estas charlas de: Python-Madrid