7 votos

¿Cómo utilizar Python para el SIG en línea?

Me considero un experto en SIG y he realizado con éxito muchos proyectos de SIG para clientes. Domino el análisis espacial, ArcGIS, QGIS, y también soy bastante bueno en Python. Sin embargo, sólo domino las soluciones SIG de escritorio (es decir, la elaboración de soluciones PDF, de imagen y KML). A veces, me encuentro con clientes que prefieren una solución más atractiva para mostrar a sus inversores, en lugar de un simple mapa en PDF. Eso me destroza porque no conozco las tecnologías de cartografía web.

Mi último cliente me pidió que buscara las mejores ubicaciones en una ciudad donde pudiera construir tiendas para su negocio. Se trata, pues, de un análisis de idoneidad SIG. Normalmente, el trabajo requeriría encontrar capas del SIG (por ejemplo, distribución de la población, distribución de los ingresos, ubicación de los parques, etc.) y combinar esas capas para producir un mapa final de puntos calientes que revelara las mejores ubicaciones. Podría hacer un mapa de imagen/pdf/kml para esto, pero el cliente preferiría un mapa web que consistiera en un mapa base (por ejemplo, Google Maps), y el mapa de puntos calientes final transparente sobre él. La solución ideal incluiría también algún tipo de opción/área en la página web en la que el usuario pudiera definir los coeficientes de ponderación de las capas de criterios y hacer que el mapa de zonas activas se creara una vez introducidas las ponderaciones. Por ejemplo, si el usuario considera que la capa de parques es muy importante, podría introducir 0,8 (en una escala de 0 a 1), 0,6 para la capa de ingresos, etc. La definición de los pesos podría ser en forma de barra deslizante. Entiendo que esta solución necesitaría que el algoritmo funcionara en segundo plano cada vez que el usuario estableciera los pesos, y sé cómo hacerlo en Python.

También soy consciente de que Javascript sería una herramienta para esta solución. Sin embargo, preferiría hacer toda la página web sólo en Python. Así que aquí vienen las preguntas: ¿Es posible hacer todo eso usando Python como lenguaje de scripting? ¿Qué me sugerirías que aprendiera para implementar una solución en línea como la que acabo de describir con respecto a un algoritmo de idoneidad del SIG?

4voto

Chris Kloberdanz Puntos 1871

Uno de los marcos web más populares para Python es Django. Contiene GeoDjango (GeoDjango pretende ser un framework web geográfico de primer nivel. Su objetivo es facilitar al máximo la creación de aplicaciones web GIS y aprovechar el poder de los datos espaciales).

Aquí hay una documentación y un tutorial: https://docs.djangoproject.com/en/1.8/ref/contrib/gis/

Sobre la creación de un geoportal sencillo en GeoDjango escribió E. Westra en su libro Python Geospatial Development.

Con esta herramienta, postgis y Javascript (Openlayers) podrás crear un bonito geoportal online, que permita visualizar datos espaciales y que los usuarios puedan realizar análisis espaciales.

2voto

neouser99 Puntos 1203

Suena como GeoDjango es lo que estás buscando. Es una extensión de la Django que está basado en Python. Seguirás necesitando HTML/CSS/Javascript para dar formato al sitio, pero Django ayuda con parte de eso y GeoDjango hace el trabajo pesado cuando se trata de tus datos GIS.

1voto

Janis Peisenieks Puntos 164

Con las páginas web me he ceñido principalmente a JavaScript, CSS y HTML. He montado algunas páginas web/aplicaciones que utilizan únicamente esos tres. Tampoco tengo ninguna experiencia con Python, así que no estoy totalmente seguro de todas sus capacidades, aunque he oído que es poderoso. Sugeriría aprender algunos de estos lenguajes que he enumerado para entender mejor lo que es capaz en ambos extremos, ya que usted ya es competente en Python. Algunas cosas Python puede ser mejor en la aplicación y algunas cosas JavaScipt puede ser mejor en la aplicación.

En JavaScript, lo más probable es que pueda utilizar la API de Google Maps y añadir los distintos mapas, capas y KML en el mapa. Luego crearía funciones de alternancia con casillas de verificación para mostrar los diferentes mapas con los diferentes coeficientes.

Algunos de los mejores lugares para empezar a aprender estos para ayudar a que su visión se convierta en una realidad consistiría en:

Escuelas W3: http://www.w3schools.com/

API de Google Maps para desarrolladores: https://developers.google.com/maps/

Una vez más, no sé mucho sobre python, así que estoy seguro de que obtendrá algunas respuestas que pueden ser más directo al punto y hasta su callejón. Pero nunca está de más aprender nuevos lenguajes. Feliz codificación.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X