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?