Com o ArcGIS 10, o Python se tornou a linguagem de script de fato para a ESRI. Enquanto líder em software de código aberto, como QGIS, GeoServer, PostGIS, todos suportam Python. Assim, tornou-se importante conhecer / aprender Python para desenvolvedores de GIS, bem como usuários.
Alguém pode fazer uma lista dessas ferramentas / módulos / suplementos em Python que são cruciais no GIS?
python
software-recommendations
thelastray
fonte
fonte
arcgisscripting
é um módulo. Veja help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//…[tag:python] + [tag:my-software]
pesquisa e classificadas nas guias de votos e perguntas frequentes . As respostas aqui nunca podem esperar corresponder a isso.Respostas:
NumPy : NumPy é o pacote fundamental para computação científica com Python. Ele contém entre outras coisas:
Além de seus óbvios usos científicos, o NumPy também pode ser usado como um eficiente recipiente multidimensional de dados genéricos. Tipos de dados arbitrários podem ser definidos. Isso permite que o NumPy se integre de maneira fácil e rápida a uma ampla variedade de bancos de dados.
SciPy : SciPy (pronuncia-se "Sigh Pie") é um software de código aberto para matemática, ciências e engenharia. É também o nome de uma conferência muito popular sobre programação científica com Python. A biblioteca SciPy depende do NumPy, que fornece manipulação de matriz N-dimensional conveniente e rápida. A biblioteca SciPy foi criada para funcionar com matrizes NumPy e fornece muitas rotinas numéricas eficientes e fáceis de usar, como rotinas para integração e otimização numéricas. Juntos, eles rodam em todos os sistemas operacionais populares, são rápidos de instalar e são gratuitos. O NumPy e o SciPy são fáceis de usar, mas poderosos o suficiente para serem confiáveis por alguns dos principais cientistas e engenheiros do mundo. Se você precisar manipular números em um computador e exibir ou publicar os resultados, experimente o SciPy!
Shapely : Shapely é um pacote Python licenciado por BSD para manipulação e análise de objetos geométricos planares. Baseia-se nas bibliotecas GEOS amplamente implementadas (o mecanismo do PostGIS) e JTS (a partir do qual o GEOS é portado). Essa dependência C é negociada pela capacidade de executar com uma velocidade incrível. Shapely não está preocupado com formatos de dados ou sistemas de coordenadas, mas pode ser facilmente integrado aos pacotes que o são.
Ligações GDAL Python : Este pacote e extensões Python são várias ferramentas para programar e manipular a Biblioteca de Abstração de Dados Geoespaciais GDAL .
fonte
Para responder minha própria pergunta, encontrei este módulo Pythons. Embora eu ainda não o tenha usado, parece emocionante.
E
fonte
vá para o Tópico :: Científico / Engenharia :: GIS e você possui todos os Módulos Python para GIS (para trabalhar com shapefiles, rasters, KML, GML, geocodificação por GPX, etc.)
Os mais importantes já foram citados, mas eu recomendo também Fiona "O Fiona fornece uma interface Python mínima e descomplicada para a biblioteca de acesso geodata mais confiável da comunidade GIS de código aberto e integra-se prontamente com outros pacotes GIS Python, como pyproj, Rtree e Shapely. "
e para redes com shapefiles ou Esri Feature Class com módulo Networkx Geoprocessamento de rede geométrica : " Até onde eu sei, a ESRI não lançou nenhuma ferramenta de geoprocessamento para sua rede geométrica " ou alternativas ao pgRouting ou Python: como transformar um shapefile (ou classe de recurso ESRI) em uma rede topológica (gráfico) (em francês)
Uso Shapely, Fiona, GDAL / OGR, Pyshp, Networkx e outros no QGIS e GRASS GIS sem problemas (e com matplotlib ou descartes para gráficos interativos). Eles geralmente têm algoritmos mais fáceis de usar para o tratamento.
Alguns desses módulos também podem ser usados no ArcPy com problemas, pois o ArcPy usa a versão 1.3 do Numpy, desatualizada (agora versão 1.6.1 ...) e você não pode atualizá-lo sem interromper o módulo ArcPy.
fonte
Para a renderização cartográfica de dados GIS:
fonte
Adicionando à lista:
PySAL - "biblioteca multiplataforma de código aberto de funções de análise espacial"
disponível em: http://code.google.com/p/pysal/
pyshp - um leitor e escritor de shapefile em python em python puro
disponível em: http://code.google.com/p/pyshp/
Editar:
Alguém me mostrou esse módulo hoje, pode ser de algum interesse para as pessoas. Amostra de dados vetoriais e raster GIS para uso em python:
gisdata - http://pypi.python.org/pypi/gisdata/0.3.3
fonte
Uso e recomendo o ReportLab Toolkit , a biblioteca de PDF de código aberto para criar programaticamente documentos em formato PDF. Conforme anunciado em suas páginas, é uma solução robusta, flexível, comprovada pelo tempo e com força de mercado. É um software de código aberto gratuito escrito em Python, mas sua sintaxe não é a mais fácil com a qual já lidei :-)
No ArcGIS 10.0, é inestimável a gravação de relatórios em formato PDF a partir de classes e tabelas de recursos, embora algumas dessas funcionalidades possam não ser tão necessárias na versão 10.1 quando o acesso aos relatórios em PDF do gravador de relatórios do ArcGIS estiver disponível para o ArcPy.
fonte
pdfgen
pacote ouplatypus
? Preciso gerar relatórios com JPEG e texto, nada muito chique.No mundo do Django:
fonte
Existem ainda mais:
GRASS - Você pode chamar GRASS com Python.
FMEObjects - Se você possui uma licença FME, eles também possuem um módulo python, que permite chamar alguns de seus transformadores legais.
fonte
O Enthought Package Distribution possui muitos dos pacotes listados acima agrupados em uma plataforma coesa. Eles até garantiram que ele pode ser facilmente configurado para funcionar no prompt python do ArcGIS e que
arcpy
pode ser usado no prompt python. Usamos isso em nossos escritórios. Do nosso wiki interno:A melhor maneira de conectar o ArcGIS e o EPD é instalar os dois e vinculá-los usando arquivos .pth, para que o Python sys.path inclua os outros módulos do sistema. O arquivo "zzEPD.pth" permite que o ArcGIS Python acesse os módulos EPD, e "zzArcGIS.pth" permite que o EPD Python acesse o arcpy. (O prefixo "zz" existe para garantir que os pacotes "estrangeiros" sejam os últimos no sys.path para evitar possíveis conflitos de módulos existentes nas duas instalações do Python.) Se você tiver conflitos no ArcGIS, simplesmente renomeie o arquivo para. txt ("zzEPD.pth.txt") e reinicie o ArcGIS e o ArcGIS não "verá" mais módulos EPD (eles não estarão no sys.path).
* zzEPD.pth - coloque na pasta \ Python27 \ Desktop10.1 \ lib \ site-packages *
* zzArcGIS.pth - coloque na pasta \ Python27 \ epd32 \ lib \ site-packages *
fonte
Não específico ao GIS, mas para depuração de python,
IPDB
é incrível. https://pypi.python.org/pypi/ipdbPara usá-lo, basta colocar as seguintes linhas no seu código:
Então, no seu shell Python, você pode inserir qualquer parte do código e interagir com todas as variáveis nesse estado atual.
fonte