Éditeur : Veuillez vous référer à ceci<\/A><\/STRONG> article de blog pour un outil de flux distributif mis à jour.<\/BLOCKQUOTE>Ce billet de blog a été écrit par Brad Simantel<\/A>, un stagiaire d'été au laboratoire de prototypes d'applications.<\/EM><\/P><\/P>NOTE Mars 2019 : Une version encore <\/SPAN>plus récente et plus facile à utiliser<\/A> <\/SPAN>de cet outil est maintenant disponible pour ArcGIS Pro et <\/SPAN>un article de blog mis à jour <\/SPAN><\/A>sur l'utilisation de l'outil a également été publié.<\/STRONG><\/SPAN><\/P>Les cartes de flux sont utilisées pour montrer le déplacement des marchandises ou des personnes d'un endroit à un autre. Ces cartes utilisent des lignes pour symboliser le mouvement, souvent variées en largeur pour représenter la quantité du flux, et se divisent en trois catégories : radial, réseau et distributif. Les cartes de flux radiales sont utilisées pour montrer les relations entre une source et plusieurs destinations. S'il y a plus que quelques destinations et que vous souhaitez toujours montrer la quantité de flux, cependant, les lignes se chevauchent trop pour discerner les valeurs individuelles. Les cartes de flux en réseau sont utilisées pour montrer la quantité de flux sur un réseau existant — les réseaux de transport et de communication étant les plus courants. Les cartes de flux distributives sont similaires aux cartes radiales, mais plutôt que d'avoir des lignes individuelles de la source à chaque destination, les lignes sont jointes ensemble, ne se divisant qu'une fois qu'elles approchent leurs destinations.Une carte de flux distributive réalisée par Charles Joseph Minard montrant les exportations de charbon d'Angleterre en 1864.<\/EM>Malheureusement, il n'existe pas d'outils intégrés dans ArcGIS pour générer des cartes de flux distributives — la seule façon d'en créer une avec le logiciel actuellement est de la dessiner et l'attribuer manuellement. Alors j'ai écrit le mien.Comment ça marche<\/STRONG>D'abord, l'outil prend les entités source et destination et les convertit en points, si ce n'est pas déjà fait. Il génère ensuite une grille en utilisant l'outil Create Fishnet<\/STRONG>, qui donnera finalement une structure aux lignes de flux finies, puis convertit cette grille en points. Ensuite, il crée trois rasters de distance euclidienne — un basé sur la distance depuis la source, un basé sur les destinations, et un basé sur les centroïdes de la grille — et les divise en un nombre égal de tranches, selon les paramètres lors du lancement de l'outil. Ces trois rasters sont ensuite additionnés, créant une surface qui peut être utilisée pour déterminer les chemins à moindre coût depuis la source vers les destinations. Après cela, il exécute l'outil Flow Accumulation<\/STRONG> pour déterminer la quantité de marchandises ou personnes en amont d'un pixel donné, puis convertit la sortie en lignes vectorielles (qui ont maintenant la quantité de marchandises ou personnes en amont comme attribut).Résultats<\/STRONG>Voici le résultat de l'outil lorsqu'il est exécuté avec les données issues de la carte d'exportation du charbon de Minard, vue ci-dessus :Ceci est sans aucune retouche - juste la sortie brute de l'outil. Voir ci-dessous pour des informations sur comment cette sortie brute peut être améliorée.Voici un autre exemple, montrant la migration depuis la Californie en 2010 :Encore une fois, c'est la sortie brute.Génération des cartes de flux<\/STRONG>Si vous souhaitez générer vous-même des cartes de flux, vous pouvez télécharger mon outil ici<\/A>. Une fois téléchargé, la première étape avant d'exécuter l'outil est de s'assurer que vos données sont adaptées. Vous aurez besoin :<\/P>Une classe d'entités source contenant une seule entité.<\/LI><\/UL><\/UL><\/P>Une classe d'entités destination contenant toutes les destinations et un attribut Z-valeur (toutes entités avec une valeur Z nulle ou vide seront rejetées). En gros tout ce que vous pourriez utiliser pour faire une carte choroplèthe ou à symboles gradués peut être utilisé pour faire une carte de flux.<\/LI><\/UL><\/UL><\/P>Optionnellement, une classe d'entités que vous souhaitez que les lignes évitent. Une classe d'entités infranchissable, si vous voulez.<\/LI><\/UL><\/UL><\/P>Enfin, vous aurez besoin que toutes vos données soient projetées, idéalement dans la même projection que votre cadre de données.<\/LI><\/UL>Si vous n'avez pas vos propres données mais souhaitez suivre l'exemple, vous pouvez télécharger le jeu de données basé sur Minard vu ci-dessus ici<\/A>.Pour exécuter l'outil, ouvrez ArcMap et trouvez la boîte à outils Python FlowMapGenerator<\/STRONG> que vous venez de télécharger via la fenêtre catalogue, puis double-cliquez dessus pour lancer l'outil FlowMapGenerator<\/STRONG>. Vous devriez voir ceci :Passons en revue ces champs un par un.<\/P>Classe d'entités source : C'est la source de votre flux, et doit être une classe d'entités contenant une seule entité. Dans l'exemple Minard, ce serait l'Angleterre.<\/LI><\/UL><\/UL><\/P>Classe d'entités destination : Ce sont les destinations de votre flux. Les entités dans cette classe doivent aussi avoir un attribut quantité qui sera finalement hérité par la ligne menant à elle.<\/LI><\/UL><\/UL><\/P>Z-Value : C'est l'attribut quantité dont je parlais, qui sera utilisé pour symboliser l'amplitude du flux vers une destination donnée.<\/LI><\/UL>Classe d'entités infranchissable : Une classe optionnelle qui vous permet d'influencer comment les lignes de flux sont dessinées. Quelle que soit la classe sélectionnée sera traitée comme presque infranchissable (les lignes traverseront ces entités seulement s'il n'y a pas d'autres options). Dans l'exemple Minard, j'ai utilisé une classe terrestre pour ce champ.<\ /LI ><\ /UL ><\ /UL ><\ /P >Étendue du traitement : Pour l'analyse raster vous devez choisir une étendue. Je recommande d'utiliser l'option Même que l'affichage<\ /EM > et définir visuellement votre étendue.<\ /LI ><\ /UL ><\ /UL ><\ /P >Taille des cellules : Ceci est aussi pour l'analyse raster. À l'échelle mondiale je recommanderais quelque chose dans la gamme dix à vingt kilomètres.<\ /LI ><\ /UL ><\ /UL ><\ /P >Poids source : Ce champ vous permet de choisir combien d'influence vous souhaitez que la distance depuis la source ait sur vos lignes de flux. Plus le nombre est grand, plus vos lignes auront tendance à aller directement vers la source.<\ /LI ><\ /UL ><\ /UL ><\ /P >Poids destination : Comme Poids source mais pour les destinations. Si vous voulez que vos lignes préfèrent passer par ou près des destinations augmentez ce nombre.<\ /LI ><\ /UL ><\ /UL ><\ /P >Poids grille : Encore pareil. Si vous voulez que vos lignes se regroupent plus longtemps avant de se disperser utilisez un nombre plus élevé ici.<\ /LI ><\ /UL ><\ /UL ><\ /P >Taille grille : Ce champ détermine la taille de la grille. Si vous utilisez une grille plus grande vos lignes auront plus tendance à se regrouper (plutôt que se disperser toutes dans la même direction). La grille sera votre taille cellule multipliée par ce nombre.<\ /LI ><\ /UL ><\ /UL ><\ /P >Classe d'entités sortie : Choisissez le nom et emplacement de votre classe polyline en sortie.<\ /LI ><\ /UL >Ajustements et symbolisation<\ /STRONG ></ P > < P > < \ P > < P >Une fois que vous avez exécuté l'outil, il vous restera une carte des flux assez inorganique visuellement. Si ce look vous plaît, félicitations ! Vous avez terminé ! Si vous voulez lisser certains bords rugueux cependant nous pouvons exécuter l'outil Smooth Line<\ /STRONG>. Pour la carte Minard ci-dessous je l'ai exécuté avec une tolérance de 1 000 kilomètres. Le lissage ne suffit pas cependant — il y a encore trop beaucoup trop de lignes droites. Malheureusement le seul moyen corriger cela est manuellement. Au moins vous n'avez pas eu à dessiner et attribuer tout manuellement ! Voici mon résultat final après quelques ajustements : < \ P > < P > < \ P > < P >Ceci est symbolisé avec des symboles gradués avec dix classes allant en largeur de 0,5 pts à 7 pts. Je préférerais utiliser des symboles proportionnels afin que vous puissiez voir les valeurs réelles mais alors la source domine trop la carte.< \ P > < P > < \ P > < P >En supposant que vous avez suivi jusqu'ici félicitations ! Vous venez d'économiser des heures à dessiner et attribuer manuellement des lignes. Si vous avez des questions laissez un commentaire ci-dessous.Téléchargements< \ STRONG > < \ P > < P > < \ P > < P >Outil : < A href= "http:\/ \/www.arcgis.com \/home \/item.html?id=3bb350838ee044979d1f583b116cb8c1 " rel= "nofollow noopener noreferrer " > http:\/ \/www.arcgis.com \/home \/item.html?id=3bb350838ee044979d1f583b116cb8c1 < \ A > Données : < A href= "http:\/ \/www.arcgis.com \/home \/item.html?id=9d48ce9b6837492e982e980402d3ed11 " rel= "nofollow noopener noreferrer " > http:\/ \/www.arcgis.com \/home \/item.html?id=9d48ce9b6837492e982e980402d3ed11 < \ A > < STRONG > MISE À JOUR (27/11/2012) : < \ STRONG > < \ P > < P > < \ P >Après avoir téléchargé et décompressé l'exemple vous devriez voir ce qui suit dans la fenêtre catalogue ArcMap.<\/P><\/P>Développer la python toolbox révélera un outil script comme montré ci-dessous :<\/P><\/P>Par défaut, les python toolboxes n'affichent pas l'extension de fichier "pyt". Pour afficher cette extension et d'autres extensions connues dans ArcCatalog (ou la fenêtre catalogue dans ArcMap), cochez ce qui suit :<\/P><\/P>Cette boîte de dialogue est accessible dans ArcCatalog en cliquant sur Customize > ArcCatalog Options<\/STRONG>. Décochez l'option mise en surbrillance pour afficher ce qui suit :<\/P><\/P>Veuillez adresser vos commentaires à <\/SPAN><\/SPAN>Bob Gerlt<\/A>.<\/SPAN><\/P><\/BODY><\/HTML>
Ce billet de blog a été écrit par
<\/P>
NOTE Mars 2019 : Une version encore <\/SPAN>
Si vous n'avez pas vos propres données mais souhaitez suivre l'exemple, vous pouvez télécharger le jeu de données basé sur Minard vu ci-dessus
Les membres connectés peuvent publier, suivre les mises à jour, et plus encore. Nouveau ici ? Inscrivez-vous gratuitement.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.