Mais

ArcGIS 10.2 com MatPlotLib Non-Blocking Plot


O ArcGIS 10.2 é fornecido com o MatPlotLib 1.1.1 instalado. Estou tentando exibir uma janela de plotagem sem bloqueio.

Ensaios:

Inicie um gráfico interativo em uma janela Tk a partir de uma caixa de ferramentas. Isso faz com que o gráfico seja exibido e a caixa de diálogo da caixa de ferramentas continue a ser executada em primeiro plano.

import matplotlib.pyplot as plt fig = plt.figure () plt.plot (range (10), range (10)) plt.show ()

Mudandoplt.show ()paraplt.show (block = False)deve tornar o enredo não bloqueador. Isso trava o ArcMap.

Atacando de outra direção - Crie um suplemento Python com um único botão. Esse botão executa o código acima. Também trava o ArcMap.

É possível obter um gráfico MatPlotLib sem bloqueio via arcpy?


Este é um problema com o loop de evento do Tk em conflito com o ArcGIS. O TK espera que seja o único loop da GUI em execução no processo.

A única 'solução alternativa' real (e mais um band-aid na minha opinião) que vi para usar Tk no ArcGIS seria criar uma ferramenta GP de script python e desativar a execução do script em processo. Isso é detalhado em outra postagem do blog GIS intitulada Suplementos do Python e Tkinter.


Assista o vídeo: A Complete Beginners Guide to ArcGIS Desktop Part 1 (Outubro 2021).