Suite

Modifier l'intervalle de la barre d'échelle et d'autres paramètres sur des pages dynamiques individuelles ?


Parfois, j'ai un MXD configuré en tant que mapbook à l'aide de pages dynamiques, mais j'aimerais afficher certaines pages à une échelle différente de celle d'autres dans le même mapbook. Je peux le faire en utilisant l'option Échelle pilotée par les données dans les pages dynamiques, mais lorsque ces pages sont affichées ou rendues, la barre d'échelle utilise les mêmes unités et divisions (par exemple, deux sections de 1000 pieds) pour toutes les pages et est simplement étirée ou compressé pour correspondre correctement à l'échelle d'affichage de chaque page. Donc, si j'ai un atlas dont la plupart des pages sont au 1:12 000 et une page au 1:6000, cette page aura une barre d'échelle deux fois plus longue que les autres pages, car ArcGIS utilise les mêmes paramètres (unités de division , valeur de division) pour la barre d'échelle sur chaque page.

Existe-t-il un moyen de modifier cela afin que je puisse définir les paramètres de la barre d'échelle indépendamment pour chaque page ?

Par exemple, si je passe d'une échelle de 1:24000 à 1:10000, je souhaiterai peut-être utiliser des incréments de 0,25 mille et 500 pieds respectivement.

Actuellement, ce que je ferai si j'ai, disons, un mapbook de 80 pages avec quelques pages à une échelle différente du reste, je vais d'abord rendre la majorité des pages, puis modifier les paramètres de la barre d'échelle manuellement pour le quelques pages qui seraient plus belles avec une barre d'échelle différente. Mais si quelqu'un vient et ouvre le MXD après moi et essaie de rendre le même mapbook, il se peut qu'il ne franchisse pas cette étape et les barres d'échelle ne seront pas correctes.


Je ne pense pas que vous puissiez modifier les propriétés de la barre d'échelle à l'aide de la fonctionnalité de pages dynamiques prêtes à l'emploi.

Cependant, cela ne veut pas dire que ce que vous cherchez à faire est impossible.

Il ne serait pas très difficile de le faire à l'aide d'ArcPy et est approximativement décrit dans cette [Page d'aide ESRI][1]. En utilisant leur exemple, vous pouvez configurer plusieurs barres d'échelle, une pour chaque paramètre que vous préférez, puis les déplacer sur et hors de la page en fonction de l'échelle d'une page donnée basée sur les données.

Pour que cela fonctionne, vous devez contourner l'exportation normale des pages basées sur les données et parcourir les pages en utilisant Python et l'exemple ci-dessus.

Quelque chose dans ce sens (JE N'AI PAS TESTÉ, VOUS DEVREZ L'ADAPTER À VOTRE DOCUMENT):

#Vous devrez référencer votre carte actuelle et le bloc de données, en supposant que vous n'en ayez qu'un mxd = arcpy.mapping.MapDocument("CURRENT") df = arcpy.mapping.ListDataFrames(mxd)[0] #Associate barres d'échelle dans votre mise en page avec des variables qu'arcpy peut manipuler m_scale = arcpy.mapping.ListLayoutElements(mxd, "MAPSURROUND_ELEMENT", "m scale bar")[0] km_scale = arcpy.mapping.ListLayoutElements(mxd, "MAPSURROUND_ELEMENT", "km barre d'échelle")[0] #Itérer à travers toutes les pages, pour chaque page, regardez l'échelle, puis ajustez les barres d'échelle pour qu'elles soient activées ou désactivées sur la page. for page in range(1, mxd.dataDrivenPages.pageCount +1) : #Vérifiez l'échelle et déplacez les éléments pour obtenir la bonne barre d'échelle sur la page si df.scale < 25000 : m_scale.elementPositionX = 5 #sur la page km_scale.elementPostitionX = 15 #hors de la page #Exporter la page actuelle vers un pdf, en utilisant un chemin spécifié arcpy.mapping.ExportToPDF(mxd, r"C:ProjectOutputProject1.pdf", df) else: m_scale. elementPositionX = 15 #hors de la page km_scale.elementPostitionX = 5 #sur la page #Exporter la page actuelle vers un pdf, en utilisant un chemin spécifié arcpy.mapping.ExportToPDF(mxd, r"C:ProjectOutputProject1.pdf" , df) mxd.dataDrivenPages.refresh()

Je viens de faire quelque chose comme ça dans ArcMap 10.5. Dans la boîte de dialogue de configuration DDP sous "Exent", sélectionnez l'option Data Driven Scale. Cette option vous permet d'extraire l'échelle d'un champ attributaire. Ensuite, configurez votre barre d'échelle dans le format souhaité (pour moi, c'était avec une valeur de division de 0,5 mi, 2 subdivisions et l'option de redimensionnement pour ajuster le nombre de divisions - la valeur par défaut consiste à ajuster la largeur, c'est-à-dire la longueur). Maintenant, lorsque je fais défiler le DDP dans mon MXD, la barre d'échelle change également mais reste de la même taille d'une carte à l'autre.


Voir la vidéo: MarkkinointiOpas Jakso 13: Markkinoinnin automaatio B2B, MarkkinointiOppaana Pia Viinamäki (Octobre 2021).