Eu usei as ferramentas ESRI e de código aberto para automação de mapas.
Os componentes ESRI são mencionados acima, mas se você tiver muitas etiquetas para fazer a extensão maplex é algo que economizaria muito tempo. então
- ArcMap com a extensão maplex para criação de mapas.
- mapbooks com arcpy.mapping para criar script da saída do mapa.
Eu tive problemas com a geração de lendas com o arcpy.mapping, mas se você tiver a mesma legenda em cada mapa, isso pode não ser um problema. Se você tiver acesso ao ArcGIS Server, poderá publicar sua cartografia como um serviço de mapa e gerar mapas com a API REST, mas isso pode ser um exagero.
Se você não possui ferramentas ESRI, usaria uma configuração semelhante à pilha do mapserver mencionada acima, mas usando python e mapnik.
- Postgis / spatialite / shapefiles para seus dados vetoriais.
- Qgis para qualquer trabalho de dados e para visualizações fáceis de mapas.
- Mapnik para renderização cartográfica.
- Ligações python do Mapnik para scripts da saída do mapa (muitos formatos disponíveis).
- Inkscape para qualquer marcador, gráfico ou legenda personalizada.
O postgis e o mapnik exigem um pouco mais de trabalho de front-end para configurar. O Mapnik era simplesmente o melhor mecanismo de renderização quando o usei pela primeira vez, o ESRI e o mapserver estão atualizados desde então.
Em resumo, no trabalho, eu usaria as ferramentas ESRI, pois o software fornece uma ótima interface para cartografia rápida, e o mecanismo de etiquetagem maplex funciona muito bem, mesmo que o arcpy.mapping não seja tão flexível quanto eu gostaria.
Em casa, eu usaria a pilha de código aberto, porque é muito mais flexível e infinitamente mais barata!