Suite

ArcGIS 10.2 avec tracé non bloquant MatPlotLib


ArcGIS 10.2 est livré avec MatPlotLib 1.1.1 installé. J'essaie d'afficher une fenêtre de tracé non bloquante.

Essais:

Lancer un tracé interactif dans une fenêtre Tk à partir d'une boîte à outils. Cela provoque l'affichage du tracé et la boîte de dialogue de la boîte à outils continue de s'exécuter au premier plan.

importer matplotlib.pyplot en tant que plt fig = plt.figure() plt.plot(range(10), range(10)) plt.show()

En changeantplt.show()àplt.show(bloc=Faux)devrait rendre l'intrigue non bloquante. Cela fait planter ArcMap.

Attaquer cela d'une autre direction - Créez un complément python avec un seul bouton. Ce bouton exécute le code ci-dessus. Fait également planter ArcMap.

Est-il possible d'obtenir un tracé MatPlotLib non bloquant via arcpy ?


Il s'agit d'un problème avec la boucle d'événements de Tk en conflit avec ArcGIS. TK s'attend à ce qu'il s'agisse de la seule boucle d'interface graphique en cours d'exécution dans le processus.

La seule véritable "solution de contournement" (et plus un pansement à mon avis) que j'ai vue pour utiliser Tk dans ArcGIS serait de créer un outil GP de script python et de désactiver l'exécution du script en cours. Ceci est détaillé dans un autre article de blog SIG intitulé Python Add-Ins and Tkinter.


Voir la vidéo: Getting Started in ArcGIS. Creating and Editing Objects in ArcMap (Octobre 2021).